Semi-encapsulated the core/api dependency graphs and created a proper structure to load eager singletons

This commit is contained in:
Ernir Erlingsson
2016-03-10 22:31:08 +01:00
parent 10764d727b
commit 6f233070fe
28 changed files with 483 additions and 225 deletions

View File

@@ -2,15 +2,12 @@ package org.briarproject.properties;
import org.briarproject.api.clients.ClientHelper;
import org.briarproject.api.contact.ContactManager;
import org.briarproject.api.data.BdfReaderFactory;
import org.briarproject.api.data.MetadataEncoder;
import org.briarproject.api.properties.TransportPropertyManager;
import org.briarproject.api.sync.ValidationManager;
import org.briarproject.api.system.Clock;
import org.briarproject.contact.ContactModule;
import org.briarproject.data.DataModule;
import org.briarproject.sync.SyncModule;
import javax.inject.Inject;
import javax.inject.Singleton;
import dagger.Module;
@@ -21,6 +18,11 @@ import static org.briarproject.properties.TransportPropertyManagerImpl.CLIENT_ID
@Module
public class PropertiesModule {
public static class EagerSingletons {
@Inject TransportPropertyValidator transportPropertyValidator;
@Inject TransportPropertyManager transportPropertyManager;
}
@Provides
@Singleton
TransportPropertyValidator getValidator(ValidationManager validationManager,