//JAVA TO C# CONVERTER WARNING: 'final' parameters are ignored unless the option to convert to C# 7.2 'in' parameters is selected: //ORIGINAL LINE: IndexProxy createPopulatingIndexProxy(final org.neo4j.storageengine.api.schema.StoreIndexDescriptor descriptor, final boolean flipToTentative, final IndexingService.Monitor monitor, final IndexPopulationJob populationJob) internal virtual IndexProxy CreatePopulatingIndexProxy(StoreIndexDescriptor descriptor, bool flipToTentative, IndexingService.Monitor monitor, IndexPopulationJob populationJob) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final FlippableIndexProxy flipper = new FlippableIndexProxy(); FlippableIndexProxy flipper = new FlippableIndexProxy(); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final String indexUserDescription = indexUserDescription(descriptor); string indexUserDescription = indexUserDescription(descriptor); IndexPopulator populator = PopulatorFromProvider(descriptor, _samplingConfig, populationJob.BufferFactory()); CapableIndexDescriptor capableIndexDescriptor = _providerMap.withCapabilities(descriptor); FailedIndexProxyFactory failureDelegateFactory = new FailedPopulatingIndexProxyFactory(capableIndexDescriptor, populator, indexUserDescription, new IndexCountsRemover(_storeView, descriptor.Id), _logProvider); MultipleIndexPopulator.IndexPopulation indexPopulation = populationJob.AddPopulator(populator, capableIndexDescriptor, indexUserDescription, flipper, failureDelegateFactory); PopulatingIndexProxy populatingIndex = new PopulatingIndexProxy(capableIndexDescriptor, populationJob, indexPopulation); flipper.FlipTo(populatingIndex); // Prepare for flipping to online mode flipper.FlipTarget = () => { monitor.PopulationCompleteOn(descriptor); IndexAccessor accessor = OnlineAccessorFromProvider(descriptor, _samplingConfig); OnlineIndexProxy onlineProxy = new OnlineIndexProxy(capableIndexDescriptor, accessor, _storeView, true); if (flipToTentative) { return(new TentativeConstraintIndexProxy(flipper, onlineProxy)); } return(onlineProxy); }; return(new ContractCheckingIndexProxy(flipper, false)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldRemoveIndexCountsWhenTheIndexItselfIsDropped() throws java.io.IOException //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldRemoveIndexCountsWhenTheIndexItselfIsDropped() { // given CapableIndexDescriptor capableIndexDescriptor = _descriptor.withId(_indexId).withoutCapabilities(); OnlineIndexProxy index = new OnlineIndexProxy(capableIndexDescriptor, _accessor, _storeView, false); // when index.Drop(); // then verify(_accessor).drop(); verify(_storeView).replaceIndexCounts(_indexId, 0L, 0L, 0L); verifyNoMoreInteractions(_accessor, _storeView); }
internal virtual IndexProxy CreateOnlineIndexProxy(StoreIndexDescriptor descriptor) { try { IndexAccessor onlineAccessor = OnlineAccessorFromProvider(descriptor, _samplingConfig); CapableIndexDescriptor capableIndexDescriptor = _providerMap.withCapabilities(descriptor); IndexProxy proxy; proxy = new OnlineIndexProxy(capableIndexDescriptor, onlineAccessor, _storeView, false); proxy = new ContractCheckingIndexProxy(proxy, true); return(proxy); } catch (IOException e) { _logProvider.getLog(this.GetType()).error("Failed to open index: " + descriptor.Id + " (" + descriptor.UserDescription(_tokenNameLookup) + "), requesting re-population.", e); return(CreateRecoveringIndexProxy(descriptor)); } }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void mustFlipToFailedIfFailureToApplyLastBatchWhileFlipping() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void MustFlipToFailedIfFailureToApplyLastBatchWhileFlipping() { // given NullLogProvider logProvider = NullLogProvider.Instance; IndexStoreView storeView = EmptyIndexStoreViewThatProcessUpdates(); Org.Neo4j.Kernel.Api.Index.IndexPopulator_Adapter populator = EmptyPopulatorWithThrowingUpdater(); FailedIndexProxy failedProxy = FailedIndexProxy(storeView, populator); OnlineIndexProxy onlineProxy = OnlineIndexProxy(storeView); FlippableIndexProxy flipper = new FlippableIndexProxy(); flipper.FlipTarget = () => onlineProxy; MultipleIndexPopulator multipleIndexPopulator = new MultipleIndexPopulator(storeView, logProvider, EntityType.NODE, mock(typeof(SchemaState))); MultipleIndexPopulator.IndexPopulation indexPopulation = multipleIndexPopulator.AddPopulator(populator, DummyMeta(), flipper, t => failedProxy, "userDescription"); multipleIndexPopulator.QueueUpdate(SomeUpdate()); multipleIndexPopulator.IndexAllEntities().run(); // when indexPopulation.Flip(false); // then assertSame("flipper should have flipped to failing proxy", flipper.State, InternalIndexState.FAILED); }
internal TentativeConstraintIndexProxy(FlippableIndexProxy flipper, OnlineIndexProxy target) { this._flipper = flipper; this._target = target; }