simplified DI, where possible

This commit is contained in:
Sebastian Stenzel
2015-08-09 00:38:23 +02:00
parent af9deffa6d
commit 571fee9524
7 changed files with 16 additions and 67 deletions

View File

@@ -131,6 +131,12 @@
<artifactId>dagger</artifactId>
<version>2.0</version>
</dependency>
<dependency>
<groupId>com.google.dagger</groupId>
<artifactId>dagger-compiler</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<!-- JSON -->
<dependency>
@@ -139,14 +145,13 @@
<version>${jackson-databind.version}</version>
</dependency>
<!-- JUnit -->
<!-- JUnit / Mockito -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>

View File

@@ -59,31 +59,9 @@
<artifactId>dagger</artifactId>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
<scope>compile</scope>
<groupId>com.google.dagger</groupId>
<artifactId>dagger-compiler</artifactId>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<dependencies>
<dependency>
<groupId>com.google.dagger</groupId>
<artifactId>dagger-compiler</artifactId>
<version>2.0</version>
</dependency>
</dependencies>
<configuration>
<!-- workaround for http://jira.codehaus.org/browse/MCOMPILER-202 -->
<forceJavacCompilerUse>true</forceJavacCompilerUse>
</configuration>
</plugin>
</plugins>
</build>
</project>

View File

@@ -5,13 +5,11 @@ import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import javax.inject.Named;
import javax.inject.Provider;
import javax.inject.Singleton;
import org.cryptomator.crypto.Cryptor;
import org.cryptomator.crypto.SamplingCryptorDecorator;
import org.cryptomator.crypto.aes256.Aes256Cryptor;
import org.cryptomator.ui.model.VaultFactory;
import org.cryptomator.ui.model.VaultObjectMapperProvider;
import org.cryptomator.ui.settings.Settings;
import org.cryptomator.ui.settings.SettingsProvider;
@@ -58,12 +56,6 @@ class CryptomatorModule {
return new SemVerComparator();
}
@Provides
@Singleton
VaultObjectMapperProvider provideVaultObjectMapperProvider(VaultFactory vaultFactory) {
return new VaultObjectMapperProvider(vaultFactory);
}
@Provides
@Singleton
@Named("VaultJsonMapper")
@@ -71,12 +63,6 @@ class CryptomatorModule {
return vaultObjectMapperProvider.get();
}
@Provides
@Singleton
SettingsProvider provideSettingsProvider(DeferredCloser closer, @Named("VaultJsonMapper") Provider<ObjectMapper> objectMapper) {
return new SettingsProvider(closer, objectMapper.get());
}
@Provides
Settings provideSettings(SettingsProvider settingsProvider) {
return settingsProvider.get();
@@ -88,12 +74,6 @@ class CryptomatorModule {
return closeLater(Executors.newCachedThreadPool(), ExecutorService::shutdown);
}
@Provides
@Singleton
VaultFactory provideVaultFactory(WebDavServer server, Provider<Cryptor> cryptorProvider, WebDavMounter mounter, DeferredCloser closer) {
return new VaultFactory(server, cryptorProvider, mounter, closer);
}
@Provides
@Singleton
WebDavMounter provideWebDavMounterProvider(WebDavServer server, ExecutorService executorService) {

View File

@@ -4,12 +4,14 @@ import java.nio.file.Path;
import javax.inject.Inject;
import javax.inject.Provider;
import javax.inject.Singleton;
import org.cryptomator.crypto.Cryptor;
import org.cryptomator.ui.util.DeferredCloser;
import org.cryptomator.ui.util.mount.WebDavMounter;
import org.cryptomator.webdav.WebDavServer;
@Singleton
public class VaultFactory {
private final WebDavServer server;

View File

@@ -6,6 +6,7 @@ import java.nio.file.Path;
import javax.inject.Inject;
import javax.inject.Provider;
import javax.inject.Singleton;
import com.fasterxml.jackson.core.JsonGenerator;
import com.fasterxml.jackson.core.JsonParser;
@@ -18,6 +19,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.databind.SerializerProvider;
import com.fasterxml.jackson.databind.module.SimpleModule;
@Singleton
public class VaultObjectMapperProvider implements Provider<ObjectMapper> {
private final VaultFactory vaultFactoy;

View File

@@ -1,20 +0,0 @@
package org.cryptomator.ui.settings;
import javax.inject.Provider;
import javax.inject.Singleton;
import org.cryptomator.ui.util.DeferredCloser;
import com.fasterxml.jackson.databind.ObjectMapper;
import dagger.Module;
@Module
public class SettingsModule {
@Singleton
Provider<Settings> provideSettingsProvider(Provider<ObjectMapper> objectMapper) {
return new SettingsProvider(new DeferredCloser(), objectMapper.get());
}
}

View File

@@ -12,6 +12,7 @@ import java.nio.file.StandardOpenOption;
import javax.inject.Inject;
import javax.inject.Named;
import javax.inject.Provider;
import javax.inject.Singleton;
import org.apache.commons.lang3.SystemUtils;
import org.cryptomator.ui.util.DeferredCloser;
@@ -20,6 +21,7 @@ import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
@Singleton
public class SettingsProvider implements Provider<Settings> {
private static final Logger LOG = LoggerFactory.getLogger(Settings.class);