Package org.goplanit.userclass
Class TravellerType
- java.lang.Object
-
- org.goplanit.utils.id.IdAbleImpl
-
- org.goplanit.utils.id.ExternalIdAbleImpl
-
- org.goplanit.userclass.TravellerType
-
- All Implemented Interfaces:
Comparable<IdAble>
,ExternalIdAble
,IdAble
,ManagedId
public class TravellerType extends ExternalIdAbleImpl implements ManagedId
Traveller type is a placeholder for all different types of traveler characteristics that affect the user class in the path choice component of traffic assignment. Together with the mode this largely defines each user class TODO: Not used yet in UserClass class- Author:
- markr
-
-
Field Summary
Fields Modifier and Type Field Description static String
DEFAULT_NAME
default namestatic String
DEFAULT_XML_ID
Default XML idstatic Class<TravellerType>
TRAVELLERTYPE_ID_CLASS
id class for generating ids
-
Constructor Summary
Constructors Constructor Description TravellerType(TravellerType other)
Copy constructorTravellerType(IdGroupingToken groupId)
ConstructorTravellerType(IdGroupingToken groupId, String name)
Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description TravellerType
deepClone()
An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call.protected static long
generateId(IdGroupingToken tokenId)
Generate id for instances of this class based on the token and class identifierClass<? extends TravellerType>
getIdClass()
Each managed id class is expected to generate its ids based on its class signature.String
getName()
Collect the nameboolean
hasName()
check if it has a namelong
recreateManagedIds(IdGroupingToken tokenId)
recreate the internal id(s) and set them including the Idable idTravellerType
shallowClone()
Create a shallow copy of this entityString
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, generateId, getId, hashCode, setId
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.goplanit.utils.id.ExternalIdAble
appendExternalId, appendExternalId, getIdsAsString, getSplitExternalId, getSplitExternalId, hasExternalId, hasXmlId, setXmlId
-
Methods inherited from interface org.goplanit.utils.id.IdAble
compareTo, getId, idEquals, idHashCode
-
Methods inherited from interface org.goplanit.utils.id.ManagedId
resetChildManagedIdEntities
-
-
-
-
Field Detail
-
TRAVELLERTYPE_ID_CLASS
public static final Class<TravellerType> TRAVELLERTYPE_ID_CLASS
id class for generating ids
-
DEFAULT_NAME
public static final String DEFAULT_NAME
default name- See Also:
- Constant Field Values
-
DEFAULT_XML_ID
public static final String DEFAULT_XML_ID
Default XML id- See Also:
- Constant Field Values
-
-
Constructor Detail
-
TravellerType
public TravellerType(IdGroupingToken groupId)
Constructor- Parameters:
groupId
- contiguous id generation within this group for instances of this class
-
TravellerType
public TravellerType(TravellerType other)
Copy constructor- Parameters:
other
- to copy
-
TravellerType
public TravellerType(IdGroupingToken groupId, String name)
Constructor- Parameters:
groupId
- contiguous id generation within this group for instances of this classname
- name of this traveler type
-
-
Method Detail
-
generateId
protected static long generateId(IdGroupingToken tokenId)
Generate id for instances of this class based on the token and class identifier- Parameters:
tokenId
- to use- Returns:
- generated id
-
recreateManagedIds
public long recreateManagedIds(IdGroupingToken tokenId)
recreate the internal id(s) and set them including the Idable id- Specified by:
recreateManagedIds
in interfaceManagedId
- Parameters:
tokenId
- to use (may be null in case managed id entity does not rely on token to recreate its managed id(s))- Returns:
- the updated internal id
-
getIdClass
public Class<? extends TravellerType> 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.- Specified by:
getIdClass
in interfaceManagedId
- Returns:
- idClass to use for generating ids for instances of this idable derived class
-
hasName
public boolean hasName()
check if it has a name- Returns:
- true when name is present false otherwise
-
getName
public String getName()
Collect the name- Returns:
- name
-
shallowClone
public TravellerType shallowClone()
Create a shallow copy of this entity- Specified by:
shallowClone
in interfaceIdAble
- Overrides:
shallowClone
in classExternalIdAbleImpl
- Returns:
- shallow copy of entity
-
deepClone
public TravellerType deepClone()
An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call. To be used with caution if not called by managed id container related code- Specified by:
deepClone
in interfaceIdAble
- Overrides:
deepClone
in classExternalIdAbleImpl
- Returns:
- deep copy of entity
-
-