public final class StarGraph.StarVertex extends StarGraph.StarElement<Vertex> implements Vertex
Vertex.Exceptions
Attachable.Exceptions, Attachable.Method
Modifier and Type | Field and Description |
---|---|
protected Map<String,List<Edge>> |
inEdges |
protected Map<String,List<Edge>> |
outEdges |
protected Map<String,List<VertexProperty>> |
vertexProperties |
id, label
DEFAULT_LABEL, EMPTY_ARGS
Constructor and Description |
---|
StarVertex(Object id,
String label) |
Modifier and Type | Method and Description |
---|---|
Edge |
addEdge(String label,
Vertex inVertex,
Object... keyValues)
Add an outgoing edge to the vertex with provided label and edge properties as key/value pairs.
|
Optional<StarGraph.StarVertex> |
applyGraphFilter(GraphFilter graphFilter) |
void |
dropEdges(Direction direction) |
void |
dropEdges(Direction direction,
String edgeLabel) |
void |
dropVertexProperties(String... propertyKeys) |
Iterator<Edge> |
edges(Direction direction,
String... edgeLabels)
Gets an
Iterator of incident edges. |
<V> Iterator<VertexProperty<V>> |
properties(String... propertyKeys)
Get an
Iterator of properties where the propertyKeys is meant to be a filter on the available
keys. |
<V> VertexProperty<V> |
property(String key,
V value,
Object... keyValues)
Set the provided key to the provided value using default
VertexProperty.Cardinality for that key. |
<V> VertexProperty<V> |
property(VertexProperty.Cardinality cardinality,
String key,
V value,
Object... keyValues)
Create a new vertex property.
|
void |
remove()
Removes the
Element from the graph. |
String |
toString() |
Iterator<Vertex> |
vertices(Direction direction,
String... edgeLabels)
Gets an
Iterator of adjacent vertices. |
equals, get, graph, hashCode, id, label
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
graph, id, keys, label, value, values
getHostingVertex
attach
protected Map<String,List<VertexProperty>> vertexProperties
public void dropEdges(Direction direction)
public void dropVertexProperties(String... propertyKeys)
public Edge addEdge(String label, Vertex inVertex, Object... keyValues)
Vertex
String
property keys and the even numbered arguments are the related property values.public <V> VertexProperty<V> property(String key, V value, Object... keyValues)
Vertex
VertexProperty.Cardinality
for that key.
The default cardinality can be vendor defined and is usually tied to the graph schema.
The default implementation of this method determines the cardinality
graph().features().vertex().getCardinality(key)
. The provided key/values are the properties of the
newly created VertexProperty
. These key/values must be provided in an even number where the odd
numbered arguments are String
.property
in interface Vertex
V
- the type of the value of the vertex propertykey
- the key of the vertex propertyvalue
- The value of the vertex propertykeyValues
- the key/value pairs to turn into vertex property propertiespublic <V> VertexProperty<V> property(VertexProperty.Cardinality cardinality, String key, V value, Object... keyValues)
Vertex
VertexProperty.Cardinality.single
, then set the key
to the value. If the cardinality is VertexProperty.Cardinality.list
, then add a new value to the key.
If the cardinality is VertexProperty.Cardinality.set
, then only add a new value if that value doesn't
already exist for the key. If the value already exists for the key, add the provided key value vertex property
properties to it.property
in interface Vertex
V
- the type of the value of the vertex propertycardinality
- the desired cardinality of the property keykey
- the key of the vertex propertyvalue
- The value of the vertex propertykeyValues
- the key/value pairs to turn into vertex property propertiespublic Iterator<Edge> edges(Direction direction, String... edgeLabels)
Vertex
Iterator
of incident edges.public Iterator<Vertex> vertices(Direction direction, String... edgeLabels)
Vertex
Iterator
of adjacent vertices.vertices
in interface Vertex
direction
- The adjacency direction of the vertices to retrieve off this vertexedgeLabels
- The labels of the edges associated with the vertices to retrieve. If no labels are provided,
then get all edges.public void remove()
Element
Element
from the graph.public <V> Iterator<VertexProperty<V>> properties(String... propertyKeys)
Vertex
Iterator
of properties where the propertyKeys
is meant to be a filter on the available
keys. If no keys are provide then return all the properties.properties
in interface Element
properties
in interface Vertex
public Optional<StarGraph.StarVertex> applyGraphFilter(GraphFilter graphFilter)
Copyright © 2013–2022 Apache Software Foundation. All rights reserved.