org.neo4j.graphdb

Interface PropertyContainer

  • All Known Subinterfaces:
    Entity, Node, Relationship


    public interface PropertyContainer
    Defines a common API for handling properties on both nodes and relationships.

    Properties are key-value pairs. The keys are always strings. Valid property value types are all the Java primitives (int, byte, float, etc), java.lang.Strings and arrays of primitives and Strings.

    Please note that Neo4j does NOT accept arbitrary objects as property values. setProperty() takes a java.lang.Object only to avoid an explosion of overloaded setProperty() methods.

    • Method Detail

      • hasProperty

        boolean hasProperty(String key)
        Returns true if this property container has a property accessible through the given key, false otherwise. If key is null, this method returns false.
        Parameters:
        key - the property key
        Returns:
        true if this property container has a property accessible through the given key, false otherwise
      • getProperty

        Object getProperty(String key)
        Returns the property value associated with the given key. The value is of one of the valid property types, i.e. a Java primitive, a String or an array of any of the valid types.

        If there's no property associated with key an unchecked exception is raised. The idiomatic way to avoid an exception for an unknown key and instead get null back is to use a default value: Object valueOrNull = nodeOrRel.getProperty( key, null )

        Parameters:
        key - the property key
        Returns:
        the property value associated with the given key
        Throws:
        NotFoundException - if there's no property associated with key
      • getProperty

        Object getProperty(String key,
                           Object defaultValue)
        Returns the property value associated with the given key, or a default value. The value is of one of the valid property types, i.e. a Java primitive, a String or an array of any of the valid types.
        Parameters:
        key - the property key
        defaultValue - the default value that will be returned if no property value was associated with the given key
        Returns:
        the property value associated with the given key
      • setProperty

        void setProperty(String key,
                         Object value)
        Sets the property value for the given key to value. The property value must be one of the valid property types, i.e:
        • boolean or boolean[]
        • byte or byte[]
        • short or short[]
        • int or int[]
        • long or long[]
        • float or float[]
        • double or double[]
        • char or char[]
        • java.lang.String or String[]

        This means that null is not an accepted property value.

        Parameters:
        key - the key with which the new property value will be associated
        value - the new property value, of one of the valid property types
        Throws:
        IllegalArgumentException - if value is of an unsupported type (including null)
      • removeProperty

        Object removeProperty(String key)
        Removes the property associated with the given key and returns the old value. If there's no property associated with the key, null will be returned.
        Parameters:
        key - the property key
        Returns:
        the property value that used to be associated with the given key
      • getPropertyKeys

        Iterable<String> getPropertyKeys()
        Returns all existing property keys, or an empty iterable if this property container has no properties.
        Returns:
        all property keys on this property container
      • getProperties

        Map<String,Object> getProperties(String... keys)
        Returns specified existing properties. The collection is mutable, but changing it has no impact on the graph as the data is detached.
        Parameters:
        keys - the property keys to return
        Returns:
        specified properties on this property container
        Throws:
        NullPointerException - if the array of keys or any key is null
      • getAllProperties

        Map<String,Object> getAllProperties()
        Returns all existing properties.
        Returns:
        all properties on this property container

Copyright © 2002–2017 The Neo4j Graph Database Project. All rights reserved.