Class LinksImpl
- java.lang.Object
-
- org.goplanit.utils.wrapper.MapWrapperImpl<Long,V>
-
- org.goplanit.utils.wrapper.LongMapWrapperImpl<E>
-
- org.goplanit.utils.id.ManagedIdEntitiesImpl<Link>
-
- org.goplanit.network.layer.physical.LinksImpl
-
- All Implemented Interfaces:
Cloneable
,Iterable<Link>
,GraphEntities<Link>
,ManagedGraphEntities<Link>
,ManagedIdEntities<Link>
,Links
,LongMapWrapper<Link>
,MapWrapper<Long,Link>
public class LinksImpl extends ManagedIdEntitiesImpl<Link> implements Links
Links primary managed container implementation- Author:
- markr
-
-
Field Summary
-
Fields inherited from class org.goplanit.utils.id.ManagedIdEntitiesImpl
managedIdClass
-
-
Constructor Summary
Constructors Constructor Description LinksImpl(LinksImpl linksImpl)
Copy constructorLinksImpl(IdGroupingToken groupId)
ConstructorLinksImpl(IdGroupingToken groupId, LinkFactory linkFactory)
Constructor
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description LinksImpl
clone()
Each map wrapper should be cloneable where the contents are references of the original where possible but the underlying map itself is newly createdLinkFactory
getFactory()
Factory to create instance of graph entity (for this container class)void
recreateIds(boolean resetManagedIdClass)
Recreate the ids for all registered entities with or without resettingvoid
reset()
When reset it called, it not only clears the entries, but also resets the managedids, such that when the container is reused the managed ids start from zero again.-
Methods inherited from class org.goplanit.utils.id.ManagedIdEntitiesImpl
getManagedIdClass, updateIdMapping
-
Methods inherited from class org.goplanit.utils.wrapper.LongMapWrapperImpl
containsKey, get, remove
-
Methods inherited from class org.goplanit.utils.wrapper.MapWrapperImpl
clear, contains, createEmptyInstance, findFirst, get, getKeyByValue, getMap, getValueToKey, isEmpty, iterator, register, remove, setMap, size, toCollection, valuesAsNewSet
-
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.goplanit.utils.graph.GraphEntities
forEachMatchingIdIn, getByExternalId, getByXmlId
-
Methods inherited from interface java.lang.Iterable
forEach, iterator, spliterator
-
Methods inherited from interface org.goplanit.utils.wrapper.LongMapWrapper
get, remove
-
Methods inherited from interface org.goplanit.utils.id.ManagedIdEntities
containsKey, getManagedIdClass, recreateIds
-
Methods inherited from interface org.goplanit.utils.wrapper.MapWrapper
addAll, clear, contains, findFirst, forEachIn, get, getFirst, getKeyByValue, isEmpty, register, remove, size, toCollection, valuesAsNewSet
-
-
-
-
Constructor Detail
-
LinksImpl
public LinksImpl(IdGroupingToken groupId)
Constructor- Parameters:
groupId
- to use for creating ids for instances
-
LinksImpl
public LinksImpl(IdGroupingToken groupId, LinkFactory linkFactory)
Constructor- Parameters:
groupId
- to use for creating ids for instanceslinkFactory
- the factory to use
-
LinksImpl
public LinksImpl(LinksImpl linksImpl)
Copy constructor- Parameters:
linksImpl
- to copy
-
-
Method Detail
-
getFactory
public LinkFactory getFactory()
Factory to create instance of graph entity (for this container class)- Specified by:
getFactory
in interfaceGraphEntities<Link>
- Specified by:
getFactory
in interfaceLinks
- Specified by:
getFactory
in interfaceManagedIdEntities<Link>
- Returns:
- entity factory
-
clone
public LinksImpl clone()
Each map wrapper should be cloneable where the contents are references of the original where possible but the underlying map itself is newly created- Specified by:
clone
in interfaceGraphEntities<Link>
- Specified by:
clone
in interfaceLinks
- Specified by:
clone
in interfaceManagedGraphEntities<Link>
- Specified by:
clone
in interfaceManagedIdEntities<Link>
- Specified by:
clone
in interfaceMapWrapper<Long,Link>
- Specified by:
clone
in classManagedIdEntitiesImpl<Link>
- Returns:
- copy
-
recreateIds
public void recreateIds(boolean resetManagedIdClass)
Recreate the ids for all registered entities with or without resetting- Specified by:
recreateIds
in interfaceManagedIdEntities<Link>
- Overrides:
recreateIds
in classManagedIdEntitiesImpl<Link>
- Parameters:
resetManagedIdClass
- when true we reset the managedId's counter to zero (via its id class) before recreating the ids, otherwise we simply recreate the managed id by starting with the next available id without resetting
-
reset
public void reset()
When reset it called, it not only clears the entries, but also resets the managedids, such that when the container is reused the managed ids start from zero again. If any entries are managedEntities themselves or contain managed entities themselves, they are reset as well- Specified by:
reset
in interfaceManagedIdEntities<Link>
- Overrides:
reset
in classManagedIdEntitiesImpl<Link>
-
-