Class AbstractTinkerGraph.TinkerGraphVertexFeatures
- java.lang.Object
-
- org.apache.tinkerpop.gremlin.tinkergraph.structure.AbstractTinkerGraph.TinkerGraphVertexFeatures
-
- All Implemented Interfaces:
Graph.Features.ElementFeatures
,Graph.Features.FeatureSet
,Graph.Features.VertexFeatures
- Enclosing class:
- AbstractTinkerGraph
public class AbstractTinkerGraph.TinkerGraphVertexFeatures extends Object implements Graph.Features.VertexFeatures
-
-
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
-
Fields inherited from interface org.apache.tinkerpop.gremlin.structure.Graph.Features.VertexFeatures
FEATURE_ADD_VERTICES, FEATURE_DUPLICATE_MULTI_PROPERTIES, FEATURE_META_PROPERTIES, FEATURE_MULTI_PROPERTIES, FEATURE_REMOVE_VERTICES, FEATURE_UPSERT
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
TinkerGraphVertexFeatures()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description VertexProperty.Cardinality
getCardinality(String key)
Gets theVertexProperty.Cardinality
for a key.Graph.Features.VertexPropertyFeatures
properties()
Gets features related to "properties" on aVertex
.boolean
supportsCustomIds()
Determines if anElement
has a specific custom object as their internal representation.boolean
supportsNullPropertyValues()
Determines if anElement
allows properties withnull
property values.boolean
willAllowId(Object id)
Determines if an identifier will be accepted by theGraph
.-
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, supportsAnyIds, supportsNumericIds, supportsRemoveProperty, supportsStringIds, supportsUserSuppliedIds, supportsUuidIds
-
Methods inherited from interface org.apache.tinkerpop.gremlin.structure.Graph.Features.VertexFeatures
supportsAddVertices, supportsDuplicateMultiProperties, supportsMetaProperties, supportsMultiProperties, supportsRemoveVertices, supportsUpsert
-
-
-
-
Method Detail
-
supportsNullPropertyValues
public boolean supportsNullPropertyValues()
Description copied from interface:Graph.Features.ElementFeatures
Determines if anElement
allows properties withnull
property values. In the event that this value isfalse
, the underlying graph must treatnull
as an indication to remove the property.- Specified by:
supportsNullPropertyValues
in interfaceGraph.Features.ElementFeatures
-
properties
public Graph.Features.VertexPropertyFeatures properties()
Description copied from interface:Graph.Features.VertexFeatures
Gets features related to "properties" on aVertex
.- Specified by:
properties
in interfaceGraph.Features.VertexFeatures
-
supportsCustomIds
public boolean supportsCustomIds()
Description copied from interface:Graph.Features.ElementFeatures
Determines if anElement
has a specific custom object as their internal representation. In other words, if the value returned fromElement.id()
is a type defined by the graph implementations, such as OrientDB'sRid
, then this method should be returntrue
. Note that this feature is most generally used for determining the appropriate tests to execute in the Gremlin Test Suite.- Specified by:
supportsCustomIds
in interfaceGraph.Features.ElementFeatures
-
willAllowId
public boolean willAllowId(Object id)
Description copied from interface:Graph.Features.ElementFeatures
Determines if an identifier will be accepted by theGraph
. This check is different than what identifier internally supports as defined in methods likeGraph.Features.ElementFeatures.supportsNumericIds()
. Those refer to internal representation of the identifier. AGraph
may accept an identifier that is not of those types and internally transform it to a native representation. Note that this method only applies ifGraph.Features.ElementFeatures.supportsUserSuppliedIds()
istrue
. Those that returnfalse
for that method can immediately return false for this one as it allows no ids of any type (it generates them all). The default implementation will immediately returnfalse
ifGraph.Features.ElementFeatures.supportsUserSuppliedIds()
isfalse
. If custom identifiers are supported then it will throw an exception. Those that returntrue
forGraph.Features.ElementFeatures.supportsCustomIds()
should override this method. IfGraph.Features.ElementFeatures.supportsAnyIds()
istrue
then the identifier will immediately be allowed. Finally, if any of the other types are supported, they will be typed checked against the class of the supplied identifier.- Specified by:
willAllowId
in interfaceGraph.Features.ElementFeatures
-
getCardinality
public VertexProperty.Cardinality getCardinality(String key)
Description copied from interface:Graph.Features.VertexFeatures
Gets theVertexProperty.Cardinality
for a key. By default, this method will returnVertexProperty.Cardinality.list
. Implementations that employ a schema can consult it to determine theVertexProperty.Cardinality
. Those that do no have a schema can return their defaultVertexProperty.Cardinality
for every key. Note that this method is primarily used by TinkerPop for internal usage and may not be suitable to reliably determine the cardinality of a key. For some implementation it may offer little more than a hint on the actual cardinality. Generally speaking it is likely best to drop down to the API of theGraph
implementation for any schema related queries.- Specified by:
getCardinality
in interfaceGraph.Features.VertexFeatures
-
-