Class ServiceNodeImpl
- java.lang.Object
-
- org.goplanit.utils.id.IdAbleImpl
-
- org.goplanit.utils.id.ExternalIdAbleImpl
-
- org.goplanit.graph.GraphEntityImpl
-
- org.goplanit.graph.VertexImpl
-
- org.goplanit.graph.directed.DirectedVertexImpl
-
- org.goplanit.network.layer.service.ServiceNodeImpl
-
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<IdAble>,DirectedVertex,GraphEntity,Vertex,ExternalIdAble,IdAble,ManagedId,ServiceNode
public class ServiceNodeImpl extends DirectedVertexImpl implements ServiceNode
A ServiceNode is used in a ServiceNetwork where it holds a reference to a DirectedNode of the ServiceNetworkLayer's underlying physical network layer. Each ServiceNode represents a location where at least a single service exists, e.g. a stop location of a public service vehicle- Author:
- markr
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected NodenetworkNodeunderlying network node-
Fields inherited from class org.goplanit.graph.directed.DirectedVertexImpl
entryEdgeSegments, exitEdgeSegments
-
Fields inherited from class org.goplanit.graph.VertexImpl
edges, inputProperties, position
-
Fields inherited from interface org.goplanit.utils.graph.Vertex
VERTEX_ID_CLASS
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedServiceNodeImpl(ServiceNodeImpl serviceNode)Copy constructorprotectedServiceNodeImpl(IdGroupingToken tokenId, Node networkNode)Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddEdgeSegment(EdgeSegment serviceLegSegment)Add edgeSegment, do not invoke when parsing networks, this connection is auto-populated before the assignment starts based on the edge segment vertices that have been registered.ServiceNodeImplclone()Create a shallow copy of this entityNodegetParentNode()Collect the network layer node this service node relates toorg.locationtech.jts.geom.PointgetPosition()Based on network nodeprotected voidsetNetworkLayerNode(Node networkNode)Set the network layer node this service node refers tovoidsetPosition(org.locationtech.jts.geom.Point position)##Set the center point geometry for a vertex-
Methods inherited from class org.goplanit.graph.directed.DirectedVertexImpl
getEntryEdgeSegments, getExitEdgeSegments, removeEdgeSegment, removeEntryEdgeSegment, removeExitEdgeSegment
-
Methods inherited from class org.goplanit.graph.VertexImpl
addEdge, addInputProperty, getEdges, getInputProperty, removeEdge
-
Methods inherited from class org.goplanit.graph.GraphEntityImpl
generateAndSetId, generateId, recreateManagedIds, toString
-
Methods inherited from class org.goplanit.utils.id.ExternalIdAbleImpl
getExternalId, getXmlId, setExternalId, setXmlId
-
Methods inherited from class org.goplanit.utils.id.IdAbleImpl
equals, generateAndSetId, getId, hashCode, setId
-
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.goplanit.utils.graph.directed.DirectedVertex
getEdgeSegment, getEntryEdgeSegments, getExitEdgeSegments, hasEntryEdgeSegments, hasExitEdgeSegments, removeEdgeSegment, removeEntryEdgeSegment, removeExitEdgeSegment, replace, replaceEntrySegment, replaceExitSegment, sizeOfEntryEdgeSegments, sizeOfExitEdgeSegments
-
Methods inherited from interface org.goplanit.utils.id.ExternalIdAble
getExternalId, getXmlId, hasExternalId, hasXmlId, setExternalId, setXmlId
-
Methods inherited from interface org.goplanit.utils.id.IdAble
compareTo, getId, idEquals, idHashCode
-
Methods inherited from interface org.goplanit.utils.id.ManagedId
recreateManagedIds, resetChildManagedIdEntities
-
Methods inherited from interface org.goplanit.utils.network.layer.service.ServiceNode
getEntryLegSegments, getExitLegSegments, getFirstEntryLegSegment, getFirstExitLegSegment, getLegs, getLegSegment
-
Methods inherited from interface org.goplanit.utils.graph.Vertex
addEdge, addInputProperty, getEdges, getEdges, getIdClass, getInputProperty, getNumberOfEdges, hasPosition, isPositionEqual2D, removeEdge, removeEdge, replace, transformPosition, validate
-
-
-
-
Field Detail
-
networkNode
protected Node networkNode
underlying network node
-
-
Constructor Detail
-
ServiceNodeImpl
protected ServiceNodeImpl(IdGroupingToken tokenId, Node networkNode)
Constructor- Parameters:
tokenId- contiguous id generation within this group for instances of this classnetworkNode- referenced by this service node
-
ServiceNodeImpl
protected ServiceNodeImpl(ServiceNodeImpl serviceNode)
Copy constructor- Parameters:
serviceNode- to copy
-
-
Method Detail
-
setNetworkLayerNode
protected void setNetworkLayerNode(Node networkNode)
Set the network layer node this service node refers to- Parameters:
networkNode- to use
-
addEdgeSegment
public boolean addEdgeSegment(EdgeSegment serviceLegSegment)
Add edgeSegment, do not invoke when parsing networks, this connection is auto-populated before the assignment starts based on the edge segment vertices that have been registered.- Specified by:
addEdgeSegmentin interfaceDirectedVertex- Overrides:
addEdgeSegmentin classDirectedVertexImpl- Parameters:
serviceLegSegment- EdgeSegment object to be added- Returns:
- true when added, false when already present (and not added)
-
getPosition
public final org.locationtech.jts.geom.Point getPosition()
Based on network node- Specified by:
getPositionin interfaceVertex- Overrides:
getPositionin classVertexImpl- Returns:
- network node position
-
setPosition
public void setPosition(org.locationtech.jts.geom.Point position)
Description copied from class:VertexImpl#Set the center point geometry for a vertex- Specified by:
setPositionin interfaceVertex- Overrides:
setPositionin classVertexImpl- Parameters:
position- the center point for a vertex
-
getParentNode
public final Node getParentNode()
Collect the network layer node this service node relates to- Specified by:
getParentNodein interfaceServiceNode- Returns:
- related network layer node
-
clone
public ServiceNodeImpl clone()
Create a shallow copy of this entity
-
-