Package com.syncleus.ferma
Interface VertexFrame
- All Superinterfaces:
ElementFrame
- All Known Implementing Classes:
AbstractVertexFrame
,TVertex
public interface VertexFrame extends ElementFrame
-
Method Summary
Modifier and Type Method Description TEdge
addFramedEdge(String label, VertexFrame inVertex)
Add an edge using a frame type ofTEdge
.<T> T
addFramedEdge(String label, VertexFrame inVertex, ClassInitializer<T> initializer)
Add an edge using the supplied frame type.<T> T
addFramedEdge(String label, VertexFrame inVertex, Class<T> kind)
Add an edge using the supplied frame type.TEdge
addFramedEdgeExplicit(String label, VertexFrame inVertex)
Add an edge using a frame type ofTEdge
.<T> T
addFramedEdgeExplicit(String label, VertexFrame inVertex, ClassInitializer<T> initializer)
Add an edge using the supplied frame type.<T> T
addFramedEdgeExplicit(String label, VertexFrame inVertex, Class<T> kind)
Add an edge using the supplied frame type.org.apache.tinkerpop.gremlin.structure.Vertex
getElement()
org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<? extends org.apache.tinkerpop.gremlin.structure.Vertex,? extends org.apache.tinkerpop.gremlin.structure.Vertex>
getRawTraversal()
void
linkBoth(VertexFrame vertex, String... labels)
Create edges from the supplied vertex to the framed vertex and vice versa with the supplied labelsvoid
linkIn(VertexFrame vertex, String... labels)
Create edges from the supplied vertex to the framed vertex with the supplied labelsvoid
linkOut(VertexFrame vertex, String... labels)
Create edges from the framed vertex to the supplied vertex with the supplied labels<T> T
reframe(Class<T> kind)
Reframe this element as a different type of frame.<T> T
reframeExplicit(Class<T> kind)
Reframe this element as a different type of frame.<K> K
setLinkBoth(ClassInitializer<K> initializer, String... labels)
Remove all edges with the labels and then add edges to/from a new vertex.void
setLinkBoth(VertexFrame vertex, String... labels)
Remove all edges with the labels and then add a edges from the supplied vertex and to the supplied vertex.<K> K
setLinkBoth(Class<K> kind, String... labels)
Remove all edges with the labels and then add edges to/from a new vertex.<K> K
setLinkBothExplicit(ClassInitializer<K> initializer, String... labels)
Remove all edges with the labels and then add edges to/from a new vertex.<K> K
setLinkBothExplicit(Class<K> kind, String... labels)
Remove all edges with the labels and then add edges to/from a new vertex.<K> K
setLinkIn(ClassInitializer<K> initializer, String... labels)
Remove all in edges with the labels and then add a single edge from a new vertex.void
setLinkIn(VertexFrame vertex, String... labels)
Remove all in edges with the labels and then add a single edge from the supplied vertex.<K> K
setLinkIn(Class<K> kind, String... labels)
Remove all in edges with the labels and then add a single edge from a new vertex.<K> K
setLinkInExplicit(ClassInitializer<K> initializer, String... labels)
Remove all in edges with the labels and then add a single edge from a new vertex.<K> K
setLinkInExplicit(Class<K> kind, String... labels)
Remove all in edges with the labels and then add a single edge from a new vertex.<K> K
setLinkOut(ClassInitializer<K> initializer, String... labels)
Remove all out edges with the labels and then add a single edge to a new vertex.void
setLinkOut(VertexFrame vertex, String... labels)
Remove all out edges with the labels and then add a single edge to the supplied vertex.<K> K
setLinkOut(Class<K> kind, String... labels)
Remove all out edges with the labels and then add a single edge to a new vertex.<K> K
setLinkOutExplicit(ClassInitializer<K> initializer, String... labels)
Remove all out edges with the labels and then add a single edge to a new vertex.<K> K
setLinkOutExplicit(Class<K> kind, String... labels)
Remove all out edges with the labels and then add a single edge to a new vertex.com.google.gson.JsonObject
toJson()
Output the vertex as JSON.<T extends Traversable<?, ?>>
Ttraverse(Function<org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<org.apache.tinkerpop.gremlin.structure.Vertex,org.apache.tinkerpop.gremlin.structure.Vertex>,org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<?,?>> traverser)
void
unlinkBoth(VertexFrame vertex, String... labels)
Remove all edges to/from the supplied vertex with the supplied labels.void
unlinkIn(VertexFrame vertex, String... labels)
Remove all in edges to the supplied vertex with the supplied labels.void
unlinkOut(VertexFrame vertex, String... labels)
Remove all out edges to the supplied vertex with the supplied labels.Methods inherited from interface com.syncleus.ferma.ElementFrame
getGraph, getId, getProperty, getProperty, getPropertyKeys, getTypeResolution, remove, removeTypeResolution, setElement, setProperty, setTypeResolution
-
Method Details
-
getElement
org.apache.tinkerpop.gremlin.structure.Vertex getElement()- Specified by:
getElement
in interfaceElementFrame
- Returns:
- The underlying element.
-
addFramedEdge
Add an edge using the supplied frame type.- Type Parameters:
T
- The type for the framed edge.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.initializer
- the initializer for the frame which defines its type and may initialize properties- Returns:
- The new edge.
-
addFramedEdge
Add an edge using the supplied frame type.- Type Parameters:
T
- The type for the framed edge.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.kind
- The kind of frame.- Returns:
- The new edge.
-
addFramedEdgeExplicit
Add an edge using the supplied frame type. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
T
- The type for the framed edge.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.initializer
- the initializer for the frame which defines its type and may initialize properties- Returns:
- The new edge.
-
addFramedEdgeExplicit
Add an edge using the supplied frame type. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
T
- The type for the framed edge.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.kind
- The kind of frame.- Returns:
- The new edge.
-
addFramedEdge
Add an edge using a frame type ofTEdge
.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.- Returns:
- The added edge.
-
addFramedEdgeExplicit
Add an edge using a frame type ofTEdge
. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Parameters:
label
- The label for the edgeinVertex
- The vertex to link to.- Returns:
- The added edge.
-
linkOut
Create edges from the framed vertex to the supplied vertex with the supplied labels- Parameters:
vertex
- The vertex to link to.labels
- The labels for the edges.
-
linkIn
Create edges from the supplied vertex to the framed vertex with the supplied labels- Parameters:
vertex
- The vertex to link from.labels
- The labels for the edges.
-
linkBoth
Create edges from the supplied vertex to the framed vertex and vice versa with the supplied labels- Parameters:
vertex
- The vertex to link to and from.labels
- The labels for the edges.
-
unlinkOut
Remove all out edges to the supplied vertex with the supplied labels.- Parameters:
vertex
- The vertex to removed the edges to.labels
- The labels of the edges.
-
unlinkIn
Remove all in edges to the supplied vertex with the supplied labels.- Parameters:
vertex
- The vertex to removed the edges from.labels
- The labels of the edges.
-
unlinkBoth
Remove all edges to/from the supplied vertex with the supplied labels.- Parameters:
vertex
- The vertex to removed the edges to/from.labels
- The labels of the edges.
-
setLinkOut
Remove all out edges with the labels and then add a single edge to the supplied vertex.- Parameters:
vertex
- the vertex to link to.labels
- The labels of the edges.
-
setLinkIn
Remove all in edges with the labels and then add a single edge from the supplied vertex.- Parameters:
vertex
- the vertex to link from.labels
- The labels of the edges.
-
setLinkBoth
Remove all edges with the labels and then add a edges from the supplied vertex and to the supplied vertex.- Parameters:
vertex
- the vertex to link from.labels
- The labels of the edges.
-
setLinkOut
Remove all out edges with the labels and then add a single edge to a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkOut
Remove all out edges with the labels and then add a single edge to a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkOutExplicit
Remove all out edges with the labels and then add a single edge to a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkOutExplicit
Remove all out edges with the labels and then add a single edge to a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkIn
Remove all in edges with the labels and then add a single edge from a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkIn
Remove all in edges with the labels and then add a single edge from a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkInExplicit
Remove all in edges with the labels and then add a single edge from a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkInExplicit
Remove all in edges with the labels and then add a single edge from a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkBoth
Remove all edges with the labels and then add edges to/from a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkBoth
Remove all edges with the labels and then add edges to/from a new vertex.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkBothExplicit
Remove all edges with the labels and then add edges to/from a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
initializer
- the initializer for the frame which defines its type and may initialize propertieslabels
- The labels of the edges.- Returns:
- The newly created edge.
-
setLinkBothExplicit
Remove all edges with the labels and then add edges to/from a new vertex. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
K
- The type used to frame the edge.- Parameters:
kind
- The kind of frame.labels
- The labels of the edges.- Returns:
- The newly created edge.
-
toJson
com.google.gson.JsonObject toJson()Output the vertex as JSON.- Returns:
- A JsonObject representing this frame.
-
reframe
Reframe this element as a different type of frame.- Type Parameters:
T
- The type used to frame the element.- Parameters:
kind
- The new kind of frame.- Returns:
- The new frame
-
reframeExplicit
Reframe this element as a different type of frame. This will bypass the default type resolution and use the untyped resolver instead. This method is useful for speeding up a look up when type resolution isn't required.- Type Parameters:
T
- The type used to frame the element.- Parameters:
kind
- The new kind of frame.- Returns:
- The new frame
-
traverse
<T extends Traversable<?, ?>> T traverse(Function<org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<org.apache.tinkerpop.gremlin.structure.Vertex,org.apache.tinkerpop.gremlin.structure.Vertex>,org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<?,?>> traverser) -
getRawTraversal
org.apache.tinkerpop.gremlin.process.traversal.dsl.graph.GraphTraversal<? extends org.apache.tinkerpop.gremlin.structure.Vertex,? extends org.apache.tinkerpop.gremlin.structure.Vertex> getRawTraversal()
-