@Deprecated public static Object asObject( Value value ) { return value == null ? null : value.asObject(); }
@Override public ValueGroup valueGroup() { return exactValue.valueGroup(); }
/** * Return this value as a regular java boxed primitive, String or primitive array. This method does not clone * primitive arrays. * * @return the object version of the current value */ public Object asObject() { return asObjectCopy(); }
@Override public int compare( Value v1, Value v2 ) { assert v1 != null && v2 != null : "null values are not supported, use NoValue.NO_VALUE instead"; ValueGroup id1 = v1.valueGroup(); ValueGroup id2 = v2.valueGroup(); int x = valueGroupComparator.compare( id1, id2 ); if ( x == 0 ) { return v1.unsafeCompareTo( v2 ); } return x; }
@Override public Comparison ternaryCompare( Value v1, Value v2 ) { assert v1 != null && v2 != null : "null values are not supported, use NoValue.NO_VALUE instead"; ValueGroup id1 = v1.valueGroup(); ValueGroup id2 = v2.valueGroup(); int x = valueGroupComparator.compare( id1, id2 ); if ( x == 0 ) { return v1.unsafeTernaryCompareTo( v2 ); } return Comparison.from( x ); }
@Override public Boolean ternaryEquals( AnyValue other ) { if ( other == null || other == NO_VALUE ) { return null; } if ( other.isSequenceValue() && this.isSequenceValue() ) { return ((SequenceValue) this).ternaryEquality( (SequenceValue) other ); } if ( other instanceof Value && ((Value) other).valueGroup() == valueGroup() ) { Value otherValue = (Value) other; if ( this.isNaN() || otherValue.isNaN() ) { return null; } return equals( otherValue ); } return Boolean.FALSE; }
static Query newCountNodeEntriesQuery( long nodeId, String[] propertyKeys, Value... propertyValues ) { BooleanQuery.Builder builder = new BooleanQuery.Builder(); builder.add( new TermQuery( newTermForChangeOrRemove( nodeId ) ), BooleanClause.Occur.MUST ); for ( int i = 0; i < propertyKeys.length; i++ ) { String propertyKey = propertyKeys[i]; Value value = propertyValues[i]; if ( value.valueGroup() == ValueGroup.TEXT ) { Query valueQuery = new ConstantScoreQuery( new TermQuery( new Term( propertyKey, value.asObject().toString() ) ) ); builder.add( valueQuery, BooleanClause.Occur.SHOULD ); } } return builder.build(); }
Object propertyValue = value.asObject(); node.setProperty( PROP, propertyValue ); node.createRelationshipTo( node, REL ).setProperty( PROP, propertyValue ); throw new AssertionError( "Failed to execute query: " + cypherQuery + " based on value " + value.prettyPrint(), e );
@Override public boolean equals( Value other ) { return other.equals( value ); }
@Override Field encodeField( String name, Value value ) { return stringField( name, value.prettyPrint() ); }
public static void encodeValue( PropertyBlock block, int keyId, Value value, DynamicRecordAllocator stringAllocator, DynamicRecordAllocator arrayAllocator, boolean allowStorePointsAndTemporal ) { if ( value instanceof ArrayValue ) { Object asObject = value.asObject(); // Try short array first, i.e. inlined in the property block if ( ShortArray.encode( keyId, asObject, block, PropertyType.getPayloadSize() ) ) { return; } // Fall back to dynamic array store List<DynamicRecord> arrayRecords = new ArrayList<>(); allocateArrayRecords( arrayRecords, asObject, arrayAllocator, allowStorePointsAndTemporal ); setSingleBlockValue( block, keyId, PropertyType.ARRAY, Iterables.first( arrayRecords ).getId() ); for ( DynamicRecord valueRecord : arrayRecords ) { valueRecord.setType( PropertyType.ARRAY.intValue() ); } block.setValueRecords( arrayRecords ); } else { value.writeTo( new PropertyBlockValueWriter( block, keyId, stringAllocator, allowStorePointsAndTemporal ) ); } }
void writeValue( Value value, NativeIndexKey.Inclusion inclusion ) { isArray = false; value.writeTo( this ); this.inclusion = inclusion; }
Object propertyValue = value.asObject(); node.setProperty( PROP, propertyValue ); node.createRelationshipTo( node, REL ).setProperty( PROP, propertyValue ); throw new AssertionError( "Failed to execute query: " + cypherQuery + " based on value " + value.prettyPrint(), e );
@Override public boolean equals( Value other ) { return other.equals( this.value ); }
@Override Field encodeField( String name, Value value ) { return stringField( name, value.prettyPrint() ); }
@Override void writeValue( int stateSlot, Value value, Inclusion inclusion ) { value.writeTo( this ); }
@Override Field encodeField( String name, Value value ) { return stringField( name, value.asObject().toString() ); }
private void setValues( Collection<String> names, Value[] values ) { int i = 0; for ( String name : names ) { Value value = values[i++]; if ( value != null && value.valueGroup() == ValueGroup.TEXT ) { Field field = encodeValueField( name, value ); document.add( field ); } } }
@Override public Object previouslyCommitedValue() { return oldValue.asObjectCopy(); }
@Override public boolean equals( Value other ) { return other.equals( value ); }