//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReplicateTokenRequestForNewToken() throws Exception //JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#: public virtual void ShouldReplicateTokenRequestForNewToken() { // given StorageEngine storageEngine = MockedStorageEngine(); when(_storageEngineSupplier.get()).thenReturn(storageEngine); IdGeneratorFactory idGeneratorFactory = mock(typeof(IdGeneratorFactory)); IdGenerator idGenerator = mock(typeof(IdGenerator)); when(idGenerator.NextId()).thenReturn(1L); when(idGeneratorFactory.Get(any(typeof(IdType)))).thenReturn(idGenerator); TokenRegistry registry = new TokenRegistry("Label"); int generatedTokenId = 1; ReplicatedTokenHolder tokenHolder = new ReplicatedLabelTokenHolder(registry, (content, trackResult) => { CompletableFuture <object> completeFuture = new CompletableFuture <object>(); completeFuture.complete(generatedTokenId); return(completeFuture); }, idGeneratorFactory, _storageEngineSupplier); // when int?tokenId = tokenHolder.GetOrCreateId("name1"); // then assertThat(tokenId, equalTo(generatedTokenId)); }
// TODO: Clean up all the resolving, which now happens every time with special selection strategies. internal ReplicatedTokenHolder(TokenRegistry tokenRegistry, Replicator replicator, IdGeneratorFactory idGeneratorFactory, IdType tokenIdType, System.Func <StorageEngine> storageEngineSupplier, TokenType type, ReplicatedTokenCreator tokenCreator) : base(tokenRegistry) { this._replicator = replicator; this._idGeneratorFactory = idGeneratorFactory; this._tokenIdType = tokenIdType; this._type = type; this._storageEngineSupplier = storageEngineSupplier; this._tokenCreator = tokenCreator; }
internal static TokenRegistry CreatePopulatedTokenRegistry(string tokenType, int[] tokenIds) { TokenRegistry tokenRegistry = new TokenRegistry(tokenType); IList <NamedToken> tokens = new List <NamedToken>(); foreach (int propertyId in tokenIds) { tokens.Add(new NamedToken(tokenType + propertyId, propertyId)); } tokenRegistry.InitialTokens = tokens; return(tokenRegistry); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldStoreInitialTokens() public virtual void ShouldStoreInitialTokens() { // given TokenRegistry registry = new TokenRegistry("Label"); ReplicatedTokenHolder tokenHolder = new ReplicatedLabelTokenHolder(registry, null, null, _storageEngineSupplier); // when tokenHolder.InitialTokens = asList(new NamedToken("name1", 1), new NamedToken("name2", 2)); // then assertThat(tokenHolder.AllTokens, hasItems(new NamedToken("name1", 1), new NamedToken("name2", 2))); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldReturnExistingTokenId() public virtual void ShouldReturnExistingTokenId() { // given TokenRegistry registry = new TokenRegistry("Label"); ReplicatedTokenHolder tokenHolder = new ReplicatedLabelTokenHolder(registry, null, null, _storageEngineSupplier); tokenHolder.InitialTokens = asList(new NamedToken("name1", 1), new NamedToken("name2", 2)); // when int?tokenId = tokenHolder.GetOrCreateId("name1"); // then assertThat(tokenId, equalTo(1)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void shouldCreateTokenId() public virtual void ShouldCreateTokenId() { // given TokenRegistry registry = new TokenRegistry("Label"); ReplicatedTokenStateMachine stateMachine = new ReplicatedTokenStateMachine(registry, NullLogProvider.Instance, EmptyVersionContextSupplier.EMPTY); stateMachine.InstallCommitProcess(mock(typeof(TransactionCommitProcess)), -1); // when sbyte[] commandBytes = commandBytes(TokenCommands(_expectedTokenId)); stateMachine.ApplyCommand(new ReplicatedTokenRequest(LABEL, "Person", commandBytes), 1, r => { }); // then assertEquals(_expectedTokenId, ( int )registry.GetId("Person")); }
public ReplicatedTokenStateMachine(TokenRegistry tokenRegistry, LogProvider logProvider, VersionContextSupplier versionContextSupplier) { this._tokenRegistry = tokenRegistry; this._versionContext = versionContextSupplier.VersionContext; this._log = logProvider.getLog(this.GetType()); }
/// <summary> /// Gets the token associated with the given text /// </summary> /// <param name="reg">Token registry</param> /// <param name="text">Token text</param> /// <returns>Token, or -1 if not found</returns> private int GetToken(TokenRegistry[] reg, string text) { int index = Array.BinarySearch(reg, text.ToLower()); if (index >= 0) return (reg[index].Token); return (-1); }
public CoreStateMachinesModule(MemberId myself, PlatformModule platformModule, File clusterStateDirectory, Config config, RaftReplicator replicator, RaftMachine raftMachine, Dependencies dependencies, LocalDatabase localDatabase) { StateStorage <IdAllocationState> idAllocationState; StateStorage <ReplicatedLockTokenState> lockTokenState; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.kernel.lifecycle.LifeSupport life = platformModule.life; LifeSupport life = platformModule.Life; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final org.neo4j.io.fs.FileSystemAbstraction fileSystem = platformModule.fileSystem; FileSystemAbstraction fileSystem = platformModule.FileSystem; LogService logging = platformModule.Logging; LogProvider logProvider = logging.InternalLogProvider; lockTokenState = life.Add(new DurableStateStorage <>(fileSystem, clusterStateDirectory, LOCK_TOKEN_NAME, new ReplicatedLockTokenState.Marshal(new MemberId.Marshal()), config.Get(replicated_lock_token_state_size), logProvider)); idAllocationState = life.Add(new DurableStateStorage <>(fileSystem, clusterStateDirectory, ID_ALLOCATION_NAME, new IdAllocationState.Marshal(), config.Get(id_alloc_state_size), logProvider)); ReplicatedIdAllocationStateMachine idAllocationStateMachine = new ReplicatedIdAllocationStateMachine(idAllocationState); IDictionary <IdType, int> allocationSizes = GetIdTypeAllocationSizeFromConfig(config); ReplicatedIdRangeAcquirer idRangeAcquirer = new ReplicatedIdRangeAcquirer(replicator, idAllocationStateMachine, allocationSizes, myself, logProvider); IdTypeConfigurationProvider = new EnterpriseIdTypeConfigurationProvider(config); CommandIndexTracker commandIndexTracker = dependencies.SatisfyDependency(new CommandIndexTracker()); FreeIdCondition = new IdReusabilityCondition(commandIndexTracker, raftMachine, myself); this.IdGeneratorFactory = CreateIdGeneratorFactory(fileSystem, idRangeAcquirer, logProvider, IdTypeConfigurationProvider); TokenRegistry relationshipTypeTokenRegistry = new TokenRegistry(Org.Neo4j.Kernel.impl.core.TokenHolder_Fields.TYPE_RELATIONSHIP_TYPE); System.Func <StorageEngine> storageEngineSupplier = () => localDatabase.DataSource().DependencyResolver.resolveDependency(typeof(StorageEngine)); ReplicatedRelationshipTypeTokenHolder relationshipTypeTokenHolder = new ReplicatedRelationshipTypeTokenHolder(relationshipTypeTokenRegistry, replicator, this.IdGeneratorFactory, storageEngineSupplier); TokenRegistry propertyKeyTokenRegistry = new TokenRegistry(Org.Neo4j.Kernel.impl.core.TokenHolder_Fields.TYPE_PROPERTY_KEY); ReplicatedPropertyKeyTokenHolder propertyKeyTokenHolder = new ReplicatedPropertyKeyTokenHolder(propertyKeyTokenRegistry, replicator, this.IdGeneratorFactory, storageEngineSupplier); TokenRegistry labelTokenRegistry = new TokenRegistry(Org.Neo4j.Kernel.impl.core.TokenHolder_Fields.TYPE_LABEL); ReplicatedLabelTokenHolder labelTokenHolder = new ReplicatedLabelTokenHolder(labelTokenRegistry, replicator, this.IdGeneratorFactory, storageEngineSupplier); ReplicatedLockTokenStateMachine replicatedLockTokenStateMachine = new ReplicatedLockTokenStateMachine(lockTokenState); VersionContextSupplier versionContextSupplier = platformModule.VersionContextSupplier; ReplicatedTokenStateMachine labelTokenStateMachine = new ReplicatedTokenStateMachine(labelTokenRegistry, logProvider, versionContextSupplier); ReplicatedTokenStateMachine propertyKeyTokenStateMachine = new ReplicatedTokenStateMachine(propertyKeyTokenRegistry, logProvider, versionContextSupplier); ReplicatedTokenStateMachine relationshipTypeTokenStateMachine = new ReplicatedTokenStateMachine(relationshipTypeTokenRegistry, logProvider, versionContextSupplier); PageCursorTracerSupplier cursorTracerSupplier = platformModule.Tracers.pageCursorTracerSupplier; ReplicatedTransactionStateMachine replicatedTxStateMachine = new ReplicatedTransactionStateMachine(commandIndexTracker, replicatedLockTokenStateMachine, config.Get(state_machine_apply_max_batch_size), logProvider, cursorTracerSupplier, versionContextSupplier); dependencies.SatisfyDependencies(replicatedTxStateMachine); LocksFactory lockFactory = createLockFactory(config, logging); LocksSupplier = () => CreateLockManager(lockFactory, config, platformModule.Clock, replicator, myself, raftMachine, replicatedLockTokenStateMachine); RecoverConsensusLogIndex consensusLogIndexRecovery = new RecoverConsensusLogIndex(localDatabase, logProvider); CoreStateMachines = new CoreStateMachines(replicatedTxStateMachine, labelTokenStateMachine, relationshipTypeTokenStateMachine, propertyKeyTokenStateMachine, replicatedLockTokenStateMachine, idAllocationStateMachine, new DummyMachine(), localDatabase, consensusLogIndexRecovery); CommitProcessFactory = (appender, applier, ignored) => { localDatabase.RegisterCommitProcessDependencies(appender, applier); return(new ReplicatedTransactionCommitProcess(replicator)); }; this.TokenHolders = new TokenHolders(propertyKeyTokenHolder, labelTokenHolder, relationshipTypeTokenHolder); dependencies.SatisfyDependencies(TokenHolders); }
public TokenParser(TokenRegistry tokenRegistry) { this._tokenRegistry = tokenRegistry; }
internal SimpleTokenHolder(TokenRegistry tokenRegistry) : base(tokenRegistry) { }
/// <summary> /// Initializes a new instance of a Grammar, initially empty. /// </summary> /// <param name="tokenRegistry">The token registry to use to verify referenced tokens types are defined.</param> public Grammar(TokenRegistry tokenRegistry) { this.tokenRegistry = tokenRegistry; this.expressionLookup = new Dictionary<string, ExpressionDefinition>(); }