Interface ILogicRouteElementDetailItem
- All Superinterfaces:
Cloneable
,Serializable
- All Known Implementing Classes:
LogicRouteElementDetailItem
The Interface
IlogicRouteElementDetailItem
carried by an ILogicRouteElement
which
is only created when ILogicEntityRoute#setRequestElementDetails(boolean)
is set to true
.
This item contains Route
specific data of a Node
like data on arrival,
departure and transition times, the distance, the idle time
of how long the
Resource
had to wait at the Node
until it opened according the OpeningHours
more.
By having this information saved in the ILogicRouteElementDetailItem
the Node
Objects
remain untouched by the behavior experienced in the Routes
.
- Since:
- 08/11/2018
- Version:
- 07/02/2020
- Author:
- DNA
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic enum
Marks the status of theResource
an respect to the specificNode
. -
Method Summary
Modifier and TypeMethodDescriptionlong
Gets the arrival time of theResource
at theNode
in milliseconds since UNIX timestamp.int
Gets theindex
of theOpeningHours
from theNode
.int
Gets theindex
of theWorkingHours
of theResource
.long
long
Deprecated.long
Gets the duration between the last location of theResource
to the specificNode
in milliseconds.long
Gets theLogicRouteElementDetailItem.earlyDeviationMillis
in milliseconds.com.dna.jopt.config.types.Position
Gets theNode
.long
Gets theidle time
that aResource
had to wait since it arrived prior to theOpeningHours
of theNode
in milliseconds.long
Gets theLogicRouteElementDetailItem.lateDeviationMillis
in milliseconds.double[]
Gets the load change.long
Gets theILogicRouteElementDetailItem.ScheduleStatus
, which either isUNKNOWN, EARLY, IDLE, INTIME
orLATE
.double
Gets the transition distance from the previous location of theResource
to theNode
inmeters
.long
Gets the time that was needed since the lastgeoLocation
, likely aINode
orIPillarNode
in milliseconds.Gets the visitor ID, which is the given name of theResource
.long
Gets thewhite space idle time
in milliseconds which is the time between thesetLocalMaxRouteStartReductionTimePillar
and the normalIWorkingHours
.boolean
Checksunlocated idle time
, which means theidle time
is happening on the way and not at theNode
.
-
Method Details
-
getArrivalTime
long getArrivalTime()Gets the arrival time of theResource
at theNode
in milliseconds since UNIX timestamp.- Returns:
- the long arrival time
-
getDepatureTime
long getDepatureTime()Deprecated.Gets the departure time of theResource
at theNode
in milliseconds since UNIX timestamp.- Returns:
- the long departure time in milliseconds
-
getTransitionTime
long getTransitionTime()Gets the time that was needed since the lastgeoLocation
, likely aINode
orIPillarNode
in milliseconds.- Returns:
- the long transitionTime in milliseconds
-
getIdleTime
long getIdleTime()Gets theidle time
that aResource
had to wait since it arrived prior to theOpeningHours
of theNode
in milliseconds.If the return number is bigger than 0 the
INode.isWaitOnEarlyArrival()
is set totrue
and theILogicRouteElementDetailItem.ScheduleStatus
will be set toIDLE
. IfINode.isWaitOnEarlyArrival()
would be set tofalse
theILogicRouteElementDetailItem.ScheduleStatus
would be set toEARLY
and the return number would be 0 since theResource
is notidling
.- Returns:
- the long idleTime
-
isUnlocatedIdleTime
boolean isUnlocatedIdleTime()Checksunlocated idle time
, which means theidle time
is happening on the way and not at theNode
. TheResource
will arrive at theNode
when the work is starting. The default value isfalse
.- Returns:
- the boolean of
isUnlocatedIdleTime
-
getWhiteSpaceIdleTime
long getWhiteSpaceIdleTime()Gets thewhite space idle time
in milliseconds which is the time between thesetLocalMaxRouteStartReductionTimePillar
and the normalIWorkingHours
. ThemaxRouteStartReductionTimePillar
can only be used by anIPillarNode
.- Returns:
- the
whiteSpaceIdleTime
-
getDurationTime
long getDurationTime()Gets the duration between the last location of theResource
to the specificNode
in milliseconds.- Returns:
- the long duration time
-
getTransitionDistance
double getTransitionDistance()Gets the transition distance from the previous location of theResource
to theNode
inmeters
.- Returns:
- the double from the previous element
-
getElement
IOptimizationElement getElement()Gets theNode
.- Returns:
- the iOptimizationElement
-
getChosenOpeningHoursIndex
int getChosenOpeningHoursIndex()Gets theindex
of theOpeningHours
from theNode
.- Returns:
- the int chosenOpeningHoursIndex
-
getChosenWorkingHoursIndex
int getChosenWorkingHoursIndex()Gets theindex
of theWorkingHours
of theResource
.- Returns:
- the
choosenWorkingHoursIndex
-
getScheduleStatus
ILogicRouteElementDetailItem.ScheduleStatus getScheduleStatus()Gets theILogicRouteElementDetailItem.ScheduleStatus
, which either isUNKNOWN, EARLY, IDLE, INTIME
orLATE
. The default isUNKNOWN
.- Returns:
- the
Status
-
getVisitorId
String getVisitorId()Gets the visitor ID, which is the given name of theResource
.- Returns:
- the string of the visitor ID
-
getEarlyDeviation
long getEarlyDeviation()Gets theLogicRouteElementDetailItem.earlyDeviationMillis
in milliseconds.- Returns:
- the
earlyDeviationMillis
-
getLateDeviation
long getLateDeviation()Gets theLogicRouteElementDetailItem.lateDeviationMillis
in milliseconds.- Returns:
- the
lateDeviationMillis
-
getLoadChange
double[] getLoadChange()Gets the load change. In case a node is requesting a pickup or delivery, the load change indicates how the load of the node changed after the visitation.- Returns:
- the load change
-
getNodeDepotAfterVisit
Optional<INodeDepot> getNodeDepotAfterVisit() -
getNodeDepotBeforeVisit
Optional<INodeDepot> getNodeDepotBeforeVisit() -
getEffectivePosition
com.dna.jopt.config.types.Position getEffectivePosition() -
getDepartureTime
long getDepartureTime() -
getOriginalTransitionTime
long getOriginalTransitionTime()
-