internal IdContextFactory(JobScheduler jobScheduler, System.Func <string, IdGeneratorFactory> idFactoryProvider, IdTypeConfigurationProvider idTypeConfigurationProvider, IdReuseEligibility eligibleForIdReuse, System.Func <IdGeneratorFactory, IdGeneratorFactory> factoryWrapper) { this._jobScheduler = jobScheduler; this._idFactoryProvider = idFactoryProvider; this._idTypeConfigurationProvider = idTypeConfigurationProvider; this._eligibleForIdReuse = eligibleForIdReuse; this._factoryWrapper = factoryWrapper; }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test void createContextWithProvidedReusabilityCheck() internal virtual void CreateContextWithProvidedReusabilityCheck() { IdReuseEligibility reuseEligibility = mock(typeof(IdReuseEligibility)); IdContextFactory contextFactory = IdContextFactoryBuilder.Of(_fs, _jobScheduler).withIdReuseEligibility(reuseEligibility).build(); DatabaseIdContext idContext = contextFactory.CreateIdContext("database"); IdGeneratorFactory bufferedGeneratorFactory = idContext.IdGeneratorFactory; assertThat(bufferedGeneratorFactory, instanceOf(typeof(BufferingIdGeneratorFactory))); BufferingIdGeneratorFactory bufferedFactory = ( BufferingIdGeneratorFactory )bufferedGeneratorFactory; KernelTransactionsSnapshot snapshot = mock(typeof(KernelTransactionsSnapshot)); when(snapshot.AllClosed()).thenReturn(true); bufferedFactory.Initialize(() => snapshot); using (IdGenerator idGenerator = bufferedFactory.Open(_testDirectory.file("a"), IdType.PROPERTY, () => 100, 100)) { idGenerator.FreeId(15); bufferedFactory.Maintenance(); verify(reuseEligibility).isEligible(snapshot); } }
public virtual IdContextFactoryBuilder WithIdReuseEligibility(IdReuseEligibility eligibleForIdReuse) { this._idReuseEligibility = eligibleForIdReuse; return(this); }