public Synchronizer( IReadOnlyEntityRepository <TAtypeEntity, TAtypeEntityId, TAtypeEntityVersion, TContext> atypeRepository, IReadOnlyEntityRepository <TBtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TContext> btypeRepository, IBatchWriteOnlyEntityRepository <TAtypeEntity, TAtypeEntityId, TAtypeEntityVersion, TContext> atypeWriteRepository, IBatchWriteOnlyEntityRepository <TBtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TContext> btypeWriteRepository, IInitialSyncStateCreationStrategy <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity> initialSyncStateCreationStrategy, IEntityRelationDataAccess <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataAccess, IEntityRelationDataFactory <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataFactory, IInitialEntityMatcher <TAtypeEntity, TAtypeEntityId, TAtypeEntityVersion, TBtypeEntity, TBtypeEntityId, TBtypeEntityVersion> initialEntityMatcher, IEqualityComparer <TAtypeEntityId> atypeIdComparer, IEqualityComparer <TBtypeEntityId> btypeIdComparer, ITotalProgressFactory totalProgressFactory, IExceptionLogger exceptionLogger, ISynchronizationContextFactory <TContext> contextFactory, IEqualityComparer <TAtypeEntityVersion> atypeVersionComparer, IEqualityComparer <TBtypeEntityVersion> btypeVersionComparer) { _initialSyncStateCreationStrategy = initialSyncStateCreationStrategy; _totalProgressFactory = totalProgressFactory; _atypeIdComparer = atypeIdComparer; _btypeIdComparer = btypeIdComparer; _exceptionLogger = exceptionLogger; _contextFactory = contextFactory; _atypeVersionComparer = atypeVersionComparer; _btypeVersionComparer = btypeVersionComparer; _atypeWriteRepository = atypeWriteRepository; _btypeWriteRepository = btypeWriteRepository; _atypeRepository = atypeRepository; _btypeRepository = btypeRepository; _entityRelationDataAccess = entityRelationDataAccess; _entityRelationDataFactory = entityRelationDataFactory; _initialEntityMatcher = initialEntityMatcher; }
public SynchronizerFactory(string applicationDataDirectory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession) { _outlookEmailAddress = outlookSession.CurrentUser.Address; _applicationDataDirectory = applicationDataDirectory; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; }
public Synchronizer( IReadOnlyEntityRepository <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TContext> atypeRepository, IReadOnlyEntityRepository <TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> btypeRepository, IBatchWriteOnlyEntityRepository <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TContext> atypeWriteRepository, IBatchWriteOnlyEntityRepository <TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> btypeWriteRepository, IInitialSyncStateCreationStrategy <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> initialSyncStateCreationStrategy, IEntityRelationDataAccess <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataAccess, IEntityRelationDataFactory <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataFactory, IInitialEntityMatcher <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity> initialEntityMatcher, IEqualityComparer <TAtypeEntityId> atypeIdComparer, IEqualityComparer <TBtypeEntityId> btypeIdComparer, ITotalProgressFactory totalProgressFactory, IEqualityComparer <TAtypeEntityVersion> atypeVersionComparer, IEqualityComparer <TBtypeEntityVersion> btypeVersionComparer, IEntitySyncStateFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> syncStateFactory, ISynchronizationInterceptorFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> synchronizationInterceptorFactory = null) { _initialSyncStateCreationStrategy = initialSyncStateCreationStrategy; _totalProgressFactory = totalProgressFactory; _atypeIdComparer = atypeIdComparer; _btypeIdComparer = btypeIdComparer; _atypeVersionComparer = atypeVersionComparer; _btypeVersionComparer = btypeVersionComparer; _syncStateFactory = syncStateFactory; _synchronizationInterceptorFactory = synchronizationInterceptorFactory ?? NullSynchronizationInterceptorFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> .Instance; _atypeWriteRepository = atypeWriteRepository; _btypeWriteRepository = btypeWriteRepository; _atypeRepository = atypeRepository; _btypeRepository = btypeRepository; _entityRelationDataAccess = entityRelationDataAccess; _entityRelationDataFactory = entityRelationDataFactory; _initialEntityMatcher = initialEntityMatcher; }
public SynchronizerFactory( Func <Guid, string> profileDataDirectoryFactory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout) { _outlookEmailAddress = outlookSession.CurrentUser.Address; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _profileDataDirectoryFactory = profileDataDirectoryFactory; }
public SynchronizerFactory( string applicationDataDirectory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout, TimeSpan calDavReadWriteTimeout) { _outlookEmailAddress = outlookSession.CurrentUser.Address; _applicationDataDirectory = applicationDataDirectory; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _calDavReadWriteTimeout = calDavReadWriteTimeout; }
public SynchronizerFactory ( Func<Guid, string> profileDataDirectoryFactory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout, TimeSpan calDavReadWriteTimeout) { _outlookEmailAddress = outlookSession.CurrentUser.Address; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _calDavReadWriteTimeout = calDavReadWriteTimeout; _profileDataDirectoryFactory = profileDataDirectoryFactory; }
public SynchronizerFactory ( string applicationDataDirectory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout, TimeSpan calDavReadWriteTimeout) { _outlookEmailAddress = outlookSession.CurrentUser.Address; _applicationDataDirectory = applicationDataDirectory; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _calDavReadWriteTimeout = calDavReadWriteTimeout; }
public Synchronizer( ISynchronizerContext <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity> synchronizerContext, IInitialSyncStateCreationStrategy <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity> initialSyncStateCreationStrategy, ITotalProgressFactory totalProgressFactory, IEqualityComparer <TAtypeEntityId> atypeIdComparer, IEqualityComparer <TBtypeEntityId> btypeIdComparer, IExceptionLogger exceptionLogger) { _synchronizerContext = synchronizerContext; _initialSyncStateCreationStrategy = initialSyncStateCreationStrategy; _totalProgressFactory = totalProgressFactory; _atypeIdComparer = atypeIdComparer; _btypeIdComparer = btypeIdComparer; _exceptionLogger = exceptionLogger; }
public SynchronizerFactory( Func <Guid, string> profileDataDirectoryFactory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout, IDaslFilterProvider daslFilterProvider, IOutlookAccountPasswordProvider outlookAccountPasswordProvider) { if (outlookAccountPasswordProvider == null) { throw new ArgumentNullException(nameof(outlookAccountPasswordProvider)); } _outlookEmailAddress = string.Empty; try { using (var currentUser = GenericComObjectWrapper.Create(outlookSession.CurrentUser)) { if (currentUser.Inner != null) { using (var addressEntry = GenericComObjectWrapper.Create(currentUser.Inner.AddressEntry)) { if (addressEntry.Inner != null) { _outlookEmailAddress = OutlookUtility.GetEmailAdressOrNull(addressEntry.Inner, NullEntitySynchronizationLogger.Instance, s_logger) ?? string.Empty; } } } } } catch (COMException ex) { s_logger.Error("Can't access currentuser email adress.", ex); } _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _daslFilterProvider = daslFilterProvider; _outlookAccountPasswordProvider = outlookAccountPasswordProvider; _profileDataDirectoryFactory = profileDataDirectoryFactory; }
public SynchronizerFactory( Func <Guid, string> profileDataDirectoryFactory, ITotalProgressFactory totalProgressFactory, NameSpace outlookSession, TimeSpan calDavConnectTimeout, IDaslFilterProvider daslFilterProvider, IOutlookAccountPasswordProvider outlookAccountPasswordProvider) { if (outlookAccountPasswordProvider == null) { throw new ArgumentNullException(nameof(outlookAccountPasswordProvider)); } _outlookEmailAddress = outlookSession.CurrentUser.Address; _totalProgressFactory = totalProgressFactory; _outlookSession = outlookSession; _calDavConnectTimeout = calDavConnectTimeout; _daslFilterProvider = daslFilterProvider; _outlookAccountPasswordProvider = outlookAccountPasswordProvider; _profileDataDirectoryFactory = profileDataDirectoryFactory; }
public Synchronizer( IReadOnlyEntityRepository <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TContext> atypeRepository, IReadOnlyEntityRepository <TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> btypeRepository, IBatchWriteOnlyEntityRepository <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TContext> atypeWriteRepository, IBatchWriteOnlyEntityRepository <TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> btypeWriteRepository, IInitialSyncStateCreationStrategy <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> initialSyncStateCreationStrategy, IEntityRelationDataAccess <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataAccess, IEntityRelationDataFactory <TAtypeEntityId, TAtypeEntityVersion, TBtypeEntityId, TBtypeEntityVersion> entityRelationDataFactory, IInitialEntityMatcher <TAtypeEntityId, TAtypeEntityVersion, TAMatchData, TBtypeEntityId, TBtypeEntityVersion, TBMatchData> initialEntityMatcher, IEqualityComparer <TAtypeEntityId> atypeIdComparer, IEqualityComparer <TBtypeEntityId> btypeIdComparer, ITotalProgressFactory totalProgressFactory, IEqualityComparer <TAtypeEntityVersion> atypeVersionComparer, IEqualityComparer <TBtypeEntityVersion> btypeVersionComparer, IEntitySyncStateFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> syncStateFactory, IExceptionHandlingStrategy exceptionHandlingStrategy, IMatchDataFactory <TAtypeEntity, TAMatchData> aMatchDataFactory, IMatchDataFactory <TBtypeEntity, TBMatchData> bMatchDataFactory, int?chunkSize, IChunkedExecutor chunkedExecutor, IFullEntitySynchronizationLoggerFactory <TAtypeEntity, TBtypeEntity> fullEntitySynchronizationLoggerFactory, IStateAwareEntityRepository <TAtypeEntityId, TAtypeEntityVersion, TContext, TAtypeStateToken> atypeStateAwareEntityRepository, IStateAwareEntityRepository <TBtypeEntityId, TBtypeEntityVersion, TContext, TBtypeStateToken> btypeStateAwareEntityRepository, IStateTokenDataAccess <TAtypeStateToken, TBtypeStateToken> stateTokenDataAccess, ISynchronizationInterceptorFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> synchronizationInterceptorFactoryOrNull = null) { if (atypeRepository == null) { throw new ArgumentNullException(nameof(atypeRepository)); } if (btypeRepository == null) { throw new ArgumentNullException(nameof(btypeRepository)); } if (atypeWriteRepository == null) { throw new ArgumentNullException(nameof(atypeWriteRepository)); } if (btypeWriteRepository == null) { throw new ArgumentNullException(nameof(btypeWriteRepository)); } if (initialSyncStateCreationStrategy == null) { throw new ArgumentNullException(nameof(initialSyncStateCreationStrategy)); } if (entityRelationDataAccess == null) { throw new ArgumentNullException(nameof(entityRelationDataAccess)); } if (entityRelationDataFactory == null) { throw new ArgumentNullException(nameof(entityRelationDataFactory)); } if (initialEntityMatcher == null) { throw new ArgumentNullException(nameof(initialEntityMatcher)); } if (atypeIdComparer == null) { throw new ArgumentNullException(nameof(atypeIdComparer)); } if (btypeIdComparer == null) { throw new ArgumentNullException(nameof(btypeIdComparer)); } if (totalProgressFactory == null) { throw new ArgumentNullException(nameof(totalProgressFactory)); } if (atypeVersionComparer == null) { throw new ArgumentNullException(nameof(atypeVersionComparer)); } if (btypeVersionComparer == null) { throw new ArgumentNullException(nameof(btypeVersionComparer)); } if (syncStateFactory == null) { throw new ArgumentNullException(nameof(syncStateFactory)); } if (exceptionHandlingStrategy == null) { throw new ArgumentNullException(nameof(exceptionHandlingStrategy)); } if (aMatchDataFactory == null) { throw new ArgumentNullException(nameof(aMatchDataFactory)); } if (bMatchDataFactory == null) { throw new ArgumentNullException(nameof(bMatchDataFactory)); } if (fullEntitySynchronizationLoggerFactory == null) { throw new ArgumentNullException(nameof(fullEntitySynchronizationLoggerFactory)); } if (atypeStateAwareEntityRepository == null) { throw new ArgumentNullException(nameof(atypeStateAwareEntityRepository)); } if (btypeStateAwareEntityRepository == null) { throw new ArgumentNullException(nameof(btypeStateAwareEntityRepository)); } if (stateTokenDataAccess == null) { throw new ArgumentNullException(nameof(stateTokenDataAccess)); } _chunkSize = chunkSize; _chunkedExecutor = chunkedExecutor; _fullEntitySynchronizationLoggerFactory = fullEntitySynchronizationLoggerFactory; _atypeStateAwareEntityRepository = atypeStateAwareEntityRepository; _btypeStateAwareEntityRepository = btypeStateAwareEntityRepository; _stateTokenDataAccess = stateTokenDataAccess; _initialSyncStateCreationStrategy = initialSyncStateCreationStrategy; _totalProgressFactory = totalProgressFactory; _atypeIdComparer = atypeIdComparer; _btypeIdComparer = btypeIdComparer; _atypeVersionComparer = atypeVersionComparer; _btypeVersionComparer = btypeVersionComparer; _syncStateFactory = syncStateFactory; _exceptionHandlingStrategy = exceptionHandlingStrategy; _aMatchDataFactory = aMatchDataFactory; _bMatchDataFactory = bMatchDataFactory; _synchronizationInterceptorFactory = synchronizationInterceptorFactoryOrNull ?? NullSynchronizationInterceptorFactory <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext> .Instance; _atypeWriteRepository = atypeWriteRepository; _btypeWriteRepository = btypeWriteRepository; _atypeRepository = atypeRepository; _btypeRepository = btypeRepository; _entityRelationDataAccess = entityRelationDataAccess; _entityRelationDataFactory = entityRelationDataFactory; _initialEntityMatcher = initialEntityMatcher; _entitySyncStateChunkCreator = new EntitySyncStateChunkCreator <TAtypeEntityId, TAtypeEntityVersion, TAtypeEntity, TBtypeEntityId, TBtypeEntityVersion, TBtypeEntity, TContext>(chunkSize); }