org.apache.tinkerpop.gremlin.neo4j.structure

## Class Neo4jGraph.Neo4jGraphFeatures.Neo4jElementFeatures

- java.lang.Object
- - org.apache.tinkerpop.gremlin.neo4j.structure.Neo4jGraph.Neo4jGraphFeatures.Neo4jElementFeatures

- All Implemented Interfaces:
    Graph.Features.ElementFeatures, Graph.Features.FeatureSet
  Direct Known Subclasses:
    Neo4jGraph.Neo4jGraphFeatures.Neo4jEdgeFeatures, Neo4jGraph.Neo4jGraphFeatures.Neo4jVertexFeatures
  Enclosing class:
    Neo4jGraph.Neo4jGraphFeatures

      public class Neo4jGraph.Neo4jGraphFeatures.Neo4jElementFeatures
      extends Object
      implements Graph.Features.ElementFeatures

- - ### Field Summary

    - ### Fields inherited from interface org.apache.tinkerpop.gremlin.structure.Graph.Features.ElementFeatures

      `FEATURE_ADD_PROPERTY, FEATURE_ANY_IDS, FEATURE_CUSTOM_IDS, FEATURE_NULL_PROPERTY_VALUES, FEATURE_NUMERIC_IDS, FEATURE_REMOVE_PROPERTY, FEATURE_STRING_IDS, FEATURE_USER_SUPPLIED_IDS, FEATURE_UUID_IDS`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `supportsAnyIds()` Determines if an `Element` any Java object is a suitable identifier.
    `boolean` | `supportsCustomIds()` Determines if an `Element` has a specific custom object as their internal representation.
    `boolean` | `supportsNullPropertyValues()` Determines if an `Element` allows properties with `null` property values.
    `boolean` | `supportsStringIds()` Determines if an `Element` has string identifiers as their internal representation.
    `boolean` | `supportsUserSuppliedIds()` Determines if an `Element` can have a user defined identifier.
    `boolean` | `supportsUuidIds()` Determines if an `Element` has UUID identifiers as their internal representation.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### Methods inherited from interface org.apache.tinkerpop.gremlin.structure.Graph.Features.ElementFeatures

      `supportsAddProperty, supportsNumericIds, supportsRemoveProperty, willAllowId`

- - ### Method Detail

    - #### supportsNullPropertyValues

          public boolean supportsNullPropertyValues()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` allows properties with `null` property values. In the event that this value is `false`, the underlying graph must treat `null` as an indication to remove the property.
      Specified by:
        `supportsNullPropertyValues` in interface `Graph.Features.ElementFeatures`

    - #### supportsUserSuppliedIds

          public boolean supportsUserSuppliedIds()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` can have a user defined identifier. Implementations that do not support this feature will be expected to auto-generate unique identifiers. In other words, if the `Graph` allows `graph.addVertex(id,x)` to work and thus set the identifier of the newly added `Vertex` to the value of `x` then this feature should return true. In this case, `x` is assumed to be an identifier data type that the `Graph` will accept.
      Specified by:
        `supportsUserSuppliedIds` in interface `Graph.Features.ElementFeatures`

    - #### supportsStringIds

          public boolean supportsStringIds()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` has string identifiers as their internal representation. In other words, if the value returned from `Element.id()` is a string value then this method should be return `true`.

      Note that this feature is most generally used for determining the appropriate tests to execute in the Gremlin Test Suite.
      Specified by:
        `supportsStringIds` in interface `Graph.Features.ElementFeatures`

    - #### supportsUuidIds

          public boolean supportsUuidIds()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` has UUID identifiers as their internal representation. In other words, if the value returned from `Element.id()` is a `UUID` value then this method should be return `true`.

      Note that this feature is most generally used for determining the appropriate tests to execute in the Gremlin Test Suite.
      Specified by:
        `supportsUuidIds` in interface `Graph.Features.ElementFeatures`

    - #### supportsAnyIds

          public boolean supportsAnyIds()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` any Java object is a suitable identifier. TinkerGraph is a good example of a `Graph` that can support this feature, as it can use any `Object` as a value for the identifier.

      Note that this feature is most generally used for determining the appropriate tests to execute in the Gremlin Test Suite. This setting should only return `true` if `Graph.Features.ElementFeatures.supportsUserSuppliedIds()` is `true`.
      Specified by:
        `supportsAnyIds` in interface `Graph.Features.ElementFeatures`

    - #### supportsCustomIds

          public boolean supportsCustomIds()

      Description copied from interface: `Graph.Features.ElementFeatures`
      Determines if an `Element` has a specific custom object as their internal representation. In other words, if the value returned from `Element.id()` is a type defined by the graph implementations, such as OrientDB's `Rid`, then this method should be return `true`.

      Note that this feature is most generally used for determining the appropriate tests to execute in the Gremlin Test Suite.
      Specified by:
        `supportsCustomIds` in interface `Graph.Features.ElementFeatures`

Copyright © 2013–2021 Apache Software Foundation. All rights reserved.