public GoogleContactRepository(IGoogleApiOperationExecutor apiOperationExecutor, string userName, ContactMappingConfiguration contactMappingConfiguration, IEqualityComparer <string> contactIdComparer, IChunkedExecutor writeOperationExecutor, IChunkedExecutor readOperationExecutor) { if (apiOperationExecutor == null) { throw new ArgumentNullException(nameof(apiOperationExecutor)); } if (contactMappingConfiguration == null) { throw new ArgumentNullException(nameof(contactMappingConfiguration)); } if (contactIdComparer == null) { throw new ArgumentNullException(nameof(contactIdComparer)); } if (writeOperationExecutor == null) { throw new ArgumentNullException(nameof(writeOperationExecutor)); } if (readOperationExecutor == null) { throw new ArgumentNullException(nameof(readOperationExecutor)); } if (String.IsNullOrEmpty(userName)) { throw new ArgumentException("Argument is null or empty", nameof(userName)); } _userName = userName; _contactMappingConfiguration = contactMappingConfiguration; _contactIdComparer = contactIdComparer; _writeOperationExecutor = writeOperationExecutor; _readOperationExecutor = readOperationExecutor; _apiOperationExecutor = apiOperationExecutor; }
public EntityContainer(IReadOnlyEntityRepository <TEntityId, TEntityVersion, TEntity, TContext> repository, IEqualityComparer <TEntityId> idComparer, int?maximumCacheSize, IChunkedExecutor chunkedExecutor) { _idComparer = idComparer; _repository = repository; _maximumCacheSize = maximumCacheSize; _chunkedExecutor = chunkedExecutor; _cachedEntities = new Dictionary <TEntityId, TEntity>(idComparer); }
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); }
public CardDavRepository(ICardDavDataAccess cardDavDataAccess, IChunkedExecutor chunkedExecutor) : base(cardDavDataAccess, chunkedExecutor) { _vCardStandardWriter = new vCardStandardWriter(); }
public CardDavEntityRepository(ICardDavDataAccess cardDavDataAccess, IChunkedExecutor chunkedExecutor) { _cardDavDataAccess = cardDavDataAccess; _chunkedExecutor = chunkedExecutor; }
public CardDavRepository(ICardDavDataAccess cardDavDataAccess, IChunkedExecutor chunkedExecutor) { _cardDavDataAccess = cardDavDataAccess; _chunkedExecutor = chunkedExecutor; _vCardImprovedWriter = new vCardImprovedWriter(); }
public SogoDistributionListRepository(ICardDavDataAccess cardDavDataAccess, IChunkedExecutor chunkedExecutor) : base(cardDavDataAccess, chunkedExecutor) { }