Package org.goplanit.utils.id
Interface ManagedId
-
- All Superinterfaces:
Cloneable
,Comparable<IdAble>
,IdAble
- All Known Subinterfaces:
Centroid
,Connectoid
,ConnectoidEdge
,ConnectoidSegment
,DirectedConnectoid
,DirectedEdge
,DirectedGraph<V,E,ES>
,DirectedPath
,DirectedVertex
,Edge
,EdgeSegment
,Graph<V,E>
,GraphEntity
,Link
,LinkSegment
,MacroscopicLinkSegment
,MacroscopicLinkSegmentType
,MacroscopicNetworkLayer
,Mode
,Node
,OdZone
,PhysicalLayer
,PredefinedMode
,RoutedService
,RoutedServicesLayer
,RoutedTrip
,RoutedTripFrequency
,RoutedTripSchedule
,ServiceLeg
,ServiceLegSegment
,ServiceNetworkLayer
,ServiceNode
,TopologicalLayer
,TransferZone
,TransferZoneGroup
,TransportLayer
,UndirectedConnectoid
,UntypedDirectedGraph<V,E,ES>
,UntypedDirectedGraphLayer<V,E,S>
,UntypedGraph<V,E>
,UntypedPhysicalLayer<N,L,LS>
,Vertex
,Zone
- All Known Implementing Classes:
BicycleMode
,BusMode
,CarHighOccupancyMode
,CarMode
,CarShareMode
,CentroidImpl
,ConnectoidEdgeImpl
,ConnectoidImpl
,ConnectoidSegmentImpl
,DirectedConnectoidImpl
,DirectedEdgeImpl
,DirectedGraphImpl
,DirectedPathImpl
,DirectedVertexImpl
,EdgeImpl
,EdgeSegmentImpl
,GoodsMode
,GraphEntityImpl
,GraphImpl
,HeavyGoodsMode
,LargeHeavyGoodsMode
,LightRailMode
,LinkImpl
,LinkSegmentImpl
,MacroscopicLinkSegmentImpl
,MacroscopicLinkSegmentTypeImpl
,MacroscopicNetworkLayerImpl
,ModeImpl
,MotorBikeMode
,NodeImpl
,OdZoneImpl
,PedestrianMode
,PredefinedModeImpl
,RoutedServiceImpl
,RoutedServicesLayerImpl
,RoutedTripDeparture
,RoutedTripFrequencyImpl
,RoutedTripImpl
,RoutedTripScheduleImpl
,ServiceLegImpl
,ServiceLegSegmentImpl
,ServiceNetworkLayerImpl
,ServiceNodeImpl
,SubwayMode
,TopologicalLayerImpl
,TrainMode
,TramMode
,TransferZoneGroupImpl
,TransferZoneImpl
,TransportLayerImpl
,UndirectedConnectoidImpl
,UntypedDirectedGraphImpl
,UntypedGraphImpl
,UntypedNetworkLayerImpl
,UntypedPhysicalLayerImpl
,VertexImpl
,ZoneImpl
public interface ManagedId extends IdAble
Interface supporting methods that aid in classes that implementIdAble
where this id is based on a generated id via the IdGenerator using class signatures and grouping tokens to manage the id generation for the instances- Author:
- markr
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description Class<? extends IdAble>
getIdClass()
Each managed id class is expected to generate its ids based on its class signature.long
recreateManagedIds(IdGroupingToken tokenId)
recreate the internal id(s) and set them including the Idable iddefault void
resetChildManagedIdEntities()
Each class that has a managed id, should be able to reset any children that themselves are managedIdEntity containers.
-
-
-
Method Detail
-
recreateManagedIds
long recreateManagedIds(IdGroupingToken tokenId)
recreate the internal id(s) and set them including the Idable id- Parameters:
tokenId
- to use- Returns:
- the updated internal id
-
getIdClass
Class<? extends IdAble> getIdClass()
Each managed id class is expected to generate its ids based on its class signature. To be able to generate the correct id the class used for id generation is to be provided via this method call.- Returns:
- idClass to use for generating ids for instances of this idable derived class
-
resetChildManagedIdEntities
default void resetChildManagedIdEntities()
Each class that has a managed id, should be able to reset any children that themselves are managedIdEntity containers. This ensures that when resetting such a container any child containers are also reset
-
-