Class AbstractGraph.SimpleVertex
- java.lang.Object
-
- com.github.moaxcp.graphs.AbstractGraph.SimpleVertex
-
- All Implemented Interfaces:
Graph.Vertex<ID>
- Enclosing class:
- AbstractGraph<ID>
public class AbstractGraph.SimpleVertex extends Object implements Graph.Vertex<ID>
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
SimpleVertex(ID id, Map<String,Object> inherited)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Set<Graph.Edge<ID>>
adjacentEdges()
Returns the set of all edges connecting to this vertex.Graph.Vertex<ID>
connectsFrom(ID s)
Ensures this vertex connects to the vertex with an 'id' property equal to the 'from' parameter.Graph.Vertex<ID>
connectsTo(ID to)
Ensures this vertex connects to the vertex with an 'id' property equal to the 'to' parameter.boolean
equals(Object o)
ID
getId()
returns identifier of vertex.Optional<Object>
getProperty(String name)
Returns the value of a property.int
hashCode()
Graph.Vertex<ID>
id(ID id)
sets identifier of this vertex.Set<Graph.Edge<ID>>
inEdges()
Returns the set of edges connecting to this vertex where 'to' is the 'id' of this vertexMap<String,Object>
inherited()
Returns inherited properties as an unmodifiableMap.Map<String,Object>
local()
Returns an unmodifiableMap
of all properties set on this Element.Set<Graph.Edge<ID>>
outEdges()
Returns the set of edges connecting to this vertex where 'from' is the 'id' of this vertexSELF
property(String name, Object value)
Adds a local property to this element returning it.Graph.Vertex<ID>
removeProperty(String name)
Removes local propertyvoid
setId(ID id)
sets identifier of vertex.void
setProperty(String name, Object value)
Adds a local property to this element.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.github.moaxcp.graphs.Graph.Vertex
getProperty, inherited, local, property
-
-
-
-
Method Detail
-
getId
public ID getId()
Description copied from interface:Graph.Vertex
returns identifier of vertex.- Specified by:
getId
in interfaceGraph.Vertex<ID>
- Returns:
- identifier of vertex
-
setId
public void setId(ID id)
Description copied from interface:Graph.Vertex
sets identifier of vertex.- Specified by:
setId
in interfaceGraph.Vertex<ID>
- Parameters:
id
- identifier of vertex
-
id
public Graph.Vertex<ID> id(ID id)
Description copied from interface:Graph.Vertex
sets identifier of this vertex. This vertex is returned.- Specified by:
id
in interfaceGraph.Vertex<ID>
- Parameters:
id
- identifier of vertex.- Returns:
- this vertex
-
setProperty
public void setProperty(String name, Object value)
Adds a local property to this element.- Specified by:
setProperty
in interfaceGraph.Vertex<ID>
- Parameters:
name
- of propertyvalue
- of property
-
removeProperty
public Graph.Vertex<ID> removeProperty(String name)
Removes local property- Specified by:
removeProperty
in interfaceGraph.Vertex<ID>
- Parameters:
name
- of property- Returns:
- this element
-
connectsTo
public Graph.Vertex<ID> connectsTo(ID to)
Description copied from interface:Graph.Vertex
Ensures this vertex connects to the vertex with an 'id' property equal to the 'to' parameter. The edge or vertex is created if needed. This vertex is returned.If a vertex is created its 'id' property will be set to the 'to' parameter. If an edge is created the 'from' property is set to the 'id' of this vertex and the 'to' property is set to the 'id' of the 'to' vertex.
If this graph is undirected and contains an edge connecting this vertex with 'to' the edge will not be created. Undirected graphs ignore 'from'/'to' order in edges.
- Specified by:
connectsTo
in interfaceGraph.Vertex<ID>
- Parameters:
to
- vertex id- Returns:
- this vertex
-
connectsFrom
public Graph.Vertex<ID> connectsFrom(ID s)
Description copied from interface:Graph.Vertex
Ensures this vertex connects to the vertex with an 'id' property equal to the 'from' parameter. The edge or vertex is created if needed. This vertex is returned.If a vertex is created its 'id' property will be set to the 'from' parameter. If an edge is created the 'from' property is set to the 'id' of the 'from' vertex and the 'to' property is set to the 'id' of this vertex.
If this graph is undirected and contains an edge connecting this vertex with 'from' the edge will not be created. Undirected graphs ignore 'from'/'to' order in edges.
- Specified by:
connectsFrom
in interfaceGraph.Vertex<ID>
- Parameters:
s
- vertex id- Returns:
- this vertex
-
adjacentEdges
public Set<Graph.Edge<ID>> adjacentEdges()
Description copied from interface:Graph.Vertex
Returns the set of all edges connecting to this vertex.- Specified by:
adjacentEdges
in interfaceGraph.Vertex<ID>
- Returns:
- set of adjacent edges
-
inEdges
public Set<Graph.Edge<ID>> inEdges()
Description copied from interface:Graph.Vertex
Returns the set of edges connecting to this vertex where 'to' is the 'id' of this vertex- Specified by:
inEdges
in interfaceGraph.Vertex<ID>
- Returns:
- incoming edges
-
outEdges
public Set<Graph.Edge<ID>> outEdges()
Description copied from interface:Graph.Vertex
Returns the set of edges connecting to this vertex where 'from' is the 'id' of this vertex- Specified by:
outEdges
in interfaceGraph.Vertex<ID>
- Returns:
- outgoing edges
-
inherited
public final Map<String,Object> inherited()
Returns inherited properties as an unmodifiableMap.- Returns:
- inherited properties
-
local
public final Map<String,Object> local()
Returns an unmodifiableMap
of all properties set on this Element.- Returns:
- all properties set on this element
-
getProperty
public final Optional<Object> getProperty(String name)
Returns the value of a property. If the property is local its value is returned before checking for an inherited property.- Parameters:
name
- of property to return- Returns:
- value mapped to name
- Throws:
NullPointerException
- if name is null
-
-