ArrayMap<Integer,PropertyData> nodeGetProperties( long nodeId, boolean light )
{
ArrayMap<Integer,PropertyData> propertyMap =
new ArrayMap<Integer,PropertyData>( 9, false, true );
NodeRecord nodeRecord = getNodeRecord( nodeId );
if ( nodeRecord != null && nodeRecord.isCreated() )
{
return propertyMap;
}
if ( nodeRecord != null )
{
if ( !nodeRecord.inUse() && !light )
{
throw new IllegalStateException( "Node[" + nodeId +
"] has been deleted in this tx" );
}
}
nodeRecord = getNodeStore().getRecord( nodeId );
if ( !nodeRecord.inUse() )
{
throw new InvalidRecordException( "Node[" + nodeId +
"] not in use" );
}
long nextProp = nodeRecord.getNextProp();
while ( nextProp != Record.NO_NEXT_PROPERTY.intValue() )
{
PropertyRecord propRecord = getPropertyStore().getLightRecord( nextProp );
propertyMap.put( propRecord.getKeyIndexId(),
new PropertyData( propRecord.getId(),