private String getStringFor( Collection<DynamicRecord> dynamicRecords ) { Pair<byte[], byte[]> source = stringStore.readFullByteArray( dynamicRecords, PropertyType.STRING ); // A string doesn't have a header in the data array return decodeString( source.other() ); }
buf.append( PropertyStore.decodeString( data ) ); buf.append( "\"," );
public String getStringFor( RECORD nameRecord ) { ensureHeavy( nameRecord ); int recordToFind = nameRecord.getNameId(); Iterator<DynamicRecord> records = nameRecord.getNameRecords().iterator(); Collection<DynamicRecord> relevantRecords = new ArrayList<>(); while ( recordToFind != Record.NO_NEXT_BLOCK.intValue() && records.hasNext() ) { DynamicRecord record = records.next(); if ( record.inUse() && record.getId() == recordToFind ) { recordToFind = (int) record.getNextBlock(); // TODO: optimize here, high chance next is right one relevantRecords.add( record ); records = nameRecord.getNameRecords().iterator(); } } return decodeString( nameStore.readFullByteArray( relevantRecords, PropertyType.STRING ).other() ); } }
byte[] stringByteArray = new byte[byteLength]; dataBuffer.get( stringByteArray ); result[i] = PropertyStore.decodeString( stringByteArray );
private String getStringFor( Collection<DynamicRecord> dynamicRecords ) { Pair<byte[], byte[]> source = stringStore.readFullByteArray( dynamicRecords, PropertyType.STRING ); // A string doesn't have a header in the data array return decodeString( source.other() ); }
buf.append( PropertyStore.decodeString( data ) ); buf.append( "\"," );
public String getStringFor( RECORD nameRecord ) { ensureHeavy( nameRecord ); int recordToFind = nameRecord.getNameId(); Iterator<DynamicRecord> records = nameRecord.getNameRecords().iterator(); Collection<DynamicRecord> relevantRecords = new ArrayList<>(); while ( recordToFind != Record.NO_NEXT_BLOCK.intValue() && records.hasNext() ) { DynamicRecord record = records.next(); if ( record.inUse() && record.getId() == recordToFind ) { recordToFind = (int) record.getNextBlock(); // TODO: optimize here, high chance next is right one relevantRecords.add( record ); records = nameRecord.getNameRecords().iterator(); } } return decodeString( nameStore.readFullByteArray( relevantRecords, PropertyType.STRING ).other() ); } }
byte[] stringByteArray = new byte[byteLength]; dataBuffer.get( stringByteArray ); result[i] = PropertyStore.decodeString( stringByteArray );