public override bool VisitPropertyCommand(Command.PropertyCommand command)
        {
            // acquire lock
            if (command.NodeId != -1)
            {
                _lockGroup.add(_lockService.acquireNodeLock(command.NodeId, Org.Neo4j.Kernel.impl.locking.LockService_LockType.WriteLock));
            }
            else if (command.RelId != -1)
            {
                _lockGroup.add(_lockService.acquireRelationshipLock(command.RelId, Org.Neo4j.Kernel.impl.locking.LockService_LockType.WriteLock));
            }

            UpdateStore(_neoStores.PropertyStore, command);
            return(false);
        }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void readPropertyCommandWithNonRequiredSecondaryUnit() throws java.io.IOException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void ReadPropertyCommandWithNonRequiredSecondaryUnit()
        {
            InMemoryClosableChannel channel = new InMemoryClosableChannel();
            PropertyRecord          before  = new PropertyRecord(1);
            PropertyRecord          after   = new PropertyRecord(2);

            after.RequiresSecondaryUnit = false;
            after.SecondaryUnitId       = 78;

            (new Command.PropertyCommand(before, after)).Serialize(channel);

            PhysicalLogCommandReaderV3_0 reader = new PhysicalLogCommandReaderV3_0();
            Command command = reader.Read(channel);

            assertTrue(command is Command.PropertyCommand);

            Command.PropertyCommand neoStoreCommand = (Command.PropertyCommand)command;

            // Then
            assertEquals(before.NextProp, neoStoreCommand.Before.NextProp);
            assertEquals(after.NextProp, neoStoreCommand.After.NextProp);
            VerifySecondaryUnit(after, neoStoreCommand.After);
        }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
//ORIGINAL LINE: @Test public void readPropertyCommandWithFixedReferenceFormat302() throws java.io.IOException
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in C#:
        public virtual void ReadPropertyCommandWithFixedReferenceFormat302()
        {
            InMemoryClosableChannel channel = new InMemoryClosableChannel();
            PropertyRecord          before  = new PropertyRecord(1);
            PropertyRecord          after   = new PropertyRecord(2);

            before.UseFixedReferences = true;
            after.UseFixedReferences  = true;

            (new Command.PropertyCommand(before, after)).Serialize(channel);

            PhysicalLogCommandReaderV3_0_2 reader = new PhysicalLogCommandReaderV3_0_2();
            Command command = reader.Read(channel);

            assertTrue(command is Command.PropertyCommand);

            Command.PropertyCommand neoStoreCommand = (Command.PropertyCommand)command;

            // Then
            assertEquals(before.NextProp, neoStoreCommand.Before.NextProp);
            assertEquals(after.NextProp, neoStoreCommand.After.NextProp);
            assertTrue(neoStoreCommand.Before.UseFixedReferences);
            assertTrue(neoStoreCommand.After.UseFixedReferences);
        }