Interface Graph.Features.GraphFeatures
-
- All Superinterfaces:
Graph.Features.FeatureSet
- All Known Implementing Classes:
EmptyGraph.EmptyGraphFeatures.EmptyGraphGraphFeatures
,RemoteGraph.RemoteGraphFeatures
,TinkerGraph.TinkerGraphGraphFeatures
,TinkerTransactionGraph.TinkerGraphGraphFeatures
- Enclosing interface:
- Graph.Features
public static interface Graph.Features.GraphFeatures extends Graph.Features.FeatureSet
Features specific to a operations of a "graph".
-
-
Field Summary
Fields Modifier and Type Field Description static String
FEATURE_COMPUTER
static String
FEATURE_CONCURRENT_ACCESS
static String
FEATURE_IO_READ
static String
FEATURE_IO_WRITE
static String
FEATURE_ORDERABILITY_SEMANTICS
static String
FEATURE_PERSISTENCE
static String
FEATURE_SERVICE_CALL
static String
FEATURE_THREADED_TRANSACTIONS
static String
FEATURE_TRANSACTIONS
-
Method Summary
All Methods Instance Methods Default Methods Modifier and Type Method Description default boolean
supportsComputer()
Determines if theGraph
implementation supportsGraphComputer
based processing.default boolean
supportsConcurrentAccess()
Determines if theGraph
implementation supports more than one connection to the same instance at the same time.default boolean
supportsIoRead()
Determines if theGraph
implementations supports read operations as executed with theGraphTraversalSource.io(String)
step.default boolean
supportsIoWrite()
Determines if theGraph
implementations supports write operations as executed with theGraphTraversalSource.io(String)
step.default boolean
supportsOrderabilitySemantics()
Determines if theGraph
implementation supports total universal orderability per the Gremlin orderability semantics.default boolean
supportsPersistence()
Determines if theGraph
implementation supports persisting it's contents natively to disk.default boolean
supportsServiceCall()
Determines if theGraph
implementation supports the service call feature.default boolean
supportsThreadedTransactions()
Determines if theGraph
implementation supports threaded transactions which allow a transaction to be executed across multiple threads viaTransaction.createThreadedTx()
.default boolean
supportsTransactions()
Determines if theGraph
implementations supports transactions.default Graph.Features.VariableFeatures
variables()
Gets the features related to "graph sideEffects" operation.
-
-
-
Field Detail
-
FEATURE_COMPUTER
static final String FEATURE_COMPUTER
- See Also:
- Constant Field Values
-
FEATURE_TRANSACTIONS
static final String FEATURE_TRANSACTIONS
- See Also:
- Constant Field Values
-
FEATURE_PERSISTENCE
static final String FEATURE_PERSISTENCE
- See Also:
- Constant Field Values
-
FEATURE_THREADED_TRANSACTIONS
static final String FEATURE_THREADED_TRANSACTIONS
- See Also:
- Constant Field Values
-
FEATURE_CONCURRENT_ACCESS
static final String FEATURE_CONCURRENT_ACCESS
- See Also:
- Constant Field Values
-
FEATURE_IO_READ
static final String FEATURE_IO_READ
- See Also:
- Constant Field Values
-
FEATURE_IO_WRITE
static final String FEATURE_IO_WRITE
- See Also:
- Constant Field Values
-
FEATURE_ORDERABILITY_SEMANTICS
static final String FEATURE_ORDERABILITY_SEMANTICS
- See Also:
- Constant Field Values
-
FEATURE_SERVICE_CALL
static final String FEATURE_SERVICE_CALL
- See Also:
- Constant Field Values
-
-
Method Detail
-
supportsComputer
default boolean supportsComputer()
Determines if theGraph
implementation supportsGraphComputer
based processing.
-
supportsPersistence
default boolean supportsPersistence()
Determines if theGraph
implementation supports persisting it's contents natively to disk. This feature does not refer to every graph's ability to write to disk via the Gremlin IO packages (.e.g. GraphML), unless the graph natively persists to disk via those options somehow. For example, TinkerGraph does not support this feature as it is a pure in-sideEffects graph.
-
supportsConcurrentAccess
default boolean supportsConcurrentAccess()
Determines if theGraph
implementation supports more than one connection to the same instance at the same time. For example, Neo4j embedded does not support this feature because concurrent access to the same database files by multiple instances is not possible. However, Neo4j HA could support this feature as each newGraph
instance coordinates with the Neo4j cluster allowing multiple instances to operate on the same database.
-
supportsTransactions
default boolean supportsTransactions()
Determines if theGraph
implementations supports transactions.
-
supportsThreadedTransactions
default boolean supportsThreadedTransactions()
Determines if theGraph
implementation supports threaded transactions which allow a transaction to be executed across multiple threads viaTransaction.createThreadedTx()
.
-
supportsIoRead
default boolean supportsIoRead()
Determines if theGraph
implementations supports read operations as executed with theGraphTraversalSource.io(String)
step. Graph implementations will generally support this by default as any graph that can support direct mutation through the Structure API will by default accept data from the standard TinkerPopGraphReader
implementations. However, some graphs likeHadoopGraph
don't accept direct mutations but can still do reads from thatio()
step.
-
supportsIoWrite
default boolean supportsIoWrite()
Determines if theGraph
implementations supports write operations as executed with theGraphTraversalSource.io(String)
step. Graph implementations will generally support this by default given the standard TinkerPopGraphWriter
implementations. However, some graphs likeHadoopGraph
will use a different approach to handle writes.
-
supportsOrderabilitySemantics
default boolean supportsOrderabilitySemantics()
Determines if theGraph
implementation supports total universal orderability per the Gremlin orderability semantics.
-
supportsServiceCall
default boolean supportsServiceCall()
Determines if theGraph
implementation supports the service call feature.
-
variables
default Graph.Features.VariableFeatures variables()
Gets the features related to "graph sideEffects" operation.
-
-