private Value getArrayFor( Iterable<DynamicRecord> records ) { return getRightArray( arrayStore.readFullByteArray( records, PropertyType.ARRAY ) ); }
public Object getArrayFor( Iterable<DynamicRecord> records ) { return getRightArray( readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); } }
public static ArrayValue decodeTemporalArray( TemporalHeader header, byte[] data ) { byte[] dataHeader = PropertyType.ARRAY.readDynamicRecordHeader( data ); byte[] dataBody = new byte[data.length - dataHeader.length]; System.arraycopy( data, dataHeader.length, dataBody, 0, dataBody.length ); Value dataValue = DynamicArrayStore.getRightArray( Pair.of( dataHeader, dataBody ) ); return find( header.temporalType ).decodeArray( dataValue ); }
public static long[] getDynamicLabelsArrayFromHeavyRecords( Iterable<DynamicRecord> records ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( readFullByteArrayFromHeavyRecords( records, PropertyType.ARRAY ) ).asObject(); return LabelIdArray.stripNodeId( storedLongs ); }
public static long[] labelIds( List<DynamicRecord> recordList ) { long[] idArray = (long[]) getRightArray( readFullByteArrayFromHeavyRecords( recordList, PropertyType.ARRAY ) ).asObject(); return LabelIdArray.stripNodeId( idArray ); }
public static long[] getDynamicLabelsArray( Iterable<DynamicRecord> records, AbstractDynamicStore dynamicLabelStore ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( dynamicLabelStore.readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); return LabelIdArray.stripNodeId( storedLongs ); }
public static Pair<Long, long[]> getDynamicLabelsArrayAndOwner( Iterable<DynamicRecord> records, AbstractDynamicStore dynamicLabelStore ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( dynamicLabelStore.readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); return Pair.of(storedLongs[0], LabelIdArray.stripNodeId( storedLongs )); } }
@Override public long[] getIfLoaded() { if ( node.isLight() ) { return null; } return stripNodeId( (long[]) getRightArray( readFullByteArrayFromHeavyRecords( node.getUsedDynamicLabelRecords(), ARRAY ) ).asObject() ); }
@Override public ArrayValue decodeArray( GeometryHeader header, byte[] data ) { byte[] dataHeader = PropertyType.ARRAY.readDynamicRecordHeader( data ); byte[] dataBody = new byte[data.length - dataHeader.length]; System.arraycopy( data, dataHeader.length, dataBody, 0, dataBody.length ); Value dataValue = DynamicArrayStore.getRightArray( Pair.of( dataHeader, dataBody ) ); if ( dataValue instanceof FloatingPointArray ) { FloatingPointArray numbers = (FloatingPointArray) dataValue; PointValue[] points = new PointValue[numbers.length() / header.dimension]; for ( int i = 0; i < points.length; i++ ) { double[] coords = new double[header.dimension]; for ( int d = 0; d < header.dimension; d++ ) { coords[d] = numbers.doubleValue( i * header.dimension + d ); } points[i] = Values.pointValue( header.crs, coords ); } return Values.pointArray( points ); } else { throw new InvalidRecordException( "Point array with unexpected type. Actual:" + dataValue.getClass().getSimpleName() + ". Expected: FloatingPointArray." ); } } };
@Override protected void transactionData( GraphStoreFixture.TransactionDataBuilder tx, GraphStoreFixture.IdGenerator next ) { long nodeId = ((long[]) getRightArray( readFullByteArrayFromHeavyRecords( chain, ARRAY ) ).asObject())[0]; NodeRecord before = inUse( new NodeRecord( nodeId, false, -1, -1 ) ); NodeRecord after = inUse( new NodeRecord( nodeId, false, -1, -1 ) ); DynamicRecord record1 = chain.get( 0 ).clone(); DynamicRecord record2 = chain.get( 1 ).clone(); DynamicRecord record3 = chain.get( 2 ).clone(); record3.setNextBlock( record2.getId() ); before.setLabelField( dynamicPointer( chain ), chain ); after.setLabelField( dynamicPointer( chain ), asList( record1, record2, record3 ) ); tx.update( before, after ); } } );
private Value getArrayFor( Iterable<DynamicRecord> records ) { return getRightArray( arrayStore.readFullByteArray( records, PropertyType.ARRAY ) ); }
public Object getArrayFor( Iterable<DynamicRecord> records ) { return getRightArray( readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); } }
public static long[] getDynamicLabelsArrayFromHeavyRecords( Iterable<DynamicRecord> records ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( readFullByteArrayFromHeavyRecords( records, PropertyType.ARRAY ) ).asObject(); return LabelIdArray.stripNodeId( storedLongs ); }
public static long[] getDynamicLabelsArray( Iterable<DynamicRecord> records, AbstractDynamicStore dynamicLabelStore ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( dynamicLabelStore.readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); return LabelIdArray.stripNodeId( storedLongs ); }
public static ArrayValue decodeTemporalArray( TemporalHeader header, byte[] data ) { byte[] dataHeader = PropertyType.ARRAY.readDynamicRecordHeader( data ); byte[] dataBody = new byte[data.length - dataHeader.length]; System.arraycopy( data, dataHeader.length, dataBody, 0, dataBody.length ); Value dataValue = DynamicArrayStore.getRightArray( Pair.of( dataHeader, dataBody ) ); return find( header.temporalType ).decodeArray( dataValue ); }
public static Pair<Long, long[]> getDynamicLabelsArrayAndOwner( Iterable<DynamicRecord> records, AbstractDynamicStore dynamicLabelStore ) { long[] storedLongs = (long[]) DynamicArrayStore.getRightArray( dynamicLabelStore.readFullByteArray( records, PropertyType.ARRAY ) ).asObject(); return Pair.of(storedLongs[0], LabelIdArray.stripNodeId( storedLongs )); } }
@Override public long[] getIfLoaded() { if ( node.isLight() ) { return null; } return stripNodeId( (long[]) getRightArray( readFullByteArrayFromHeavyRecords( node.getUsedDynamicLabelRecords(), ARRAY ) ).asObject() ); }
@Override public ArrayValue decodeArray( GeometryHeader header, byte[] data ) { byte[] dataHeader = PropertyType.ARRAY.readDynamicRecordHeader( data ); byte[] dataBody = new byte[data.length - dataHeader.length]; System.arraycopy( data, dataHeader.length, dataBody, 0, dataBody.length ); Value dataValue = DynamicArrayStore.getRightArray( Pair.of( dataHeader, dataBody ) ); if ( dataValue instanceof FloatingPointArray ) { FloatingPointArray numbers = (FloatingPointArray) dataValue; PointValue[] points = new PointValue[numbers.length() / header.dimension]; for ( int i = 0; i < points.length; i++ ) { double[] coords = new double[header.dimension]; for ( int d = 0; d < header.dimension; d++ ) { coords[d] = numbers.doubleValue( i * header.dimension + d ); } points[i] = Values.pointValue( header.crs, coords ); } return Values.pointArray( points ); } else { throw new InvalidRecordException( "Point array with unexpected type. Actual:" + dataValue.getClass().getSimpleName() + ". Expected: FloatingPointArray." ); } } };
@Override protected void transactionData( GraphStoreFixture.TransactionDataBuilder tx, GraphStoreFixture.IdGenerator next ) { DynamicRecord record1 = inUse( new DynamicRecord( chain.get( 0 ).getId() ) ); DynamicRecord record2 = notInUse( new DynamicRecord( chain.get( 1 ).getId() ) ); long[] data = (long[]) getRightArray( readFullByteArrayFromHeavyRecords( chain, ARRAY ) ); PreAllocatedRecords allocator = new PreAllocatedRecords( 60 ); allocateFromNumbers( new ArrayList<DynamicRecord>(), Arrays.copyOf( data, 11 ), iterator( record1 ), allocator ); NodeRecord before = inUse( new NodeRecord( data[0], false, -1, -1 ) ); NodeRecord after = inUse( new NodeRecord( data[0], false, -1, -1 ) ); before.setLabelField( dynamicPointer( asList( record1 ) ), chain ); after.setLabelField( dynamicPointer( asList( record1 ) ), asList( record1, record2 ) ); tx.update( before, after ); } } );
@Override protected void transactionData( GraphStoreFixture.TransactionDataBuilder tx, GraphStoreFixture.IdGenerator next ) { long nodeId = ((long[]) getRightArray( readFullByteArrayFromHeavyRecords( chain, ARRAY ) ))[0]; NodeRecord before = inUse( new NodeRecord( nodeId, false, -1, -1 ) ); NodeRecord after = inUse( new NodeRecord( nodeId, false, -1, -1 ) ); DynamicRecord record1 = chain.get( 0 ).clone(); DynamicRecord record2 = chain.get( 1 ).clone(); DynamicRecord record3 = chain.get( 2 ).clone(); record3.setNextBlock( record2.getId() ); before.setLabelField( dynamicPointer( chain ), chain ); after.setLabelField( dynamicPointer( chain ), asList( record1, record2, record3 ) ); tx.update( before, after ); } } );