Class EventNode
java.lang.Object
com.dna.jopt.member.unit.AbstractOptimizationElement
com.dna.jopt.member.unit.node.AbstractNode
com.dna.jopt.member.unit.node.event.EventNode
- All Implemented Interfaces:
IOptimizationElement
,INode
,Serializable
- Direct Known Subclasses:
InducedIdleEventNode
,PillarEventNode
This class describes
Eventnodes
which have no location. hasRealGeoLocation()
and isPillarNode()
therefore return false
.- Since:
- 01/09/2019
- Version:
- 14/10/2019
- Author:
- DNA
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.dna.jopt.member.unit.IOptimizationElement
IOptimizationElement.OptimizationElementFlavour
-
Field Summary
Fields inherited from class com.dna.jopt.member.unit.AbstractOptimizationElement
dutyHours
-
Constructor Summary
ConstructorDescriptionEventNode
(String nodeId, IDutyHours[] openingHours, int visitDuration, int priority) Deprecated.EventNode
(String nodeId, IDutyHours openingHour, int visitDuration, int priority) Deprecated.please useEventNode(String, IOpeningHours, Duration, int)
instead.EventNode
(String nodeId, IOpeningHours openingHour, Duration visitDuration, int priority) TheEventNode
has no location and cannot be aPillar
.EventNode
(String nodeId, List<IDutyHours> openingHours, int visitDuration, int priority) Deprecated.please useEventNode(String, IOpeningHours, Duration, int)
instead.EventNode
(String nodeId, List<IOpeningHours> openingHours, Duration visitDuration, int priority) TheEventNode
has no location and cannot be aPillar
. -
Method Summary
Modifier and TypeMethodDescriptionGets the flavour which spells out the kind ofNode
of the element.boolean
Gets whether thisNode
has a location.boolean
boolean
Checks, whether thisNode
is aPillarNode
.void
setIsPartialExchangeIdleForDrivingTime
(boolean isPartialExchangeIdleForDrivingTime) Methods inherited from class com.dna.jopt.member.unit.node.AbstractNode
addConstraint, addNode2NodeRelation, addQualification, addSubsequentSlaveNode, addSubsequentSlaveNodes, addViolation, decrementCurrentAutoFilterProtectedExecutions, detachNodeRelations, detachResourceConstraints, detachResourceConstraints, equals, getAutoFilterViolationCollector, getBaseJointVisitDuration, getBaseJointVisitDurationMillis, getBaseVisitDuration, getBaseVisitDurationMillis, getConstraints, getCurrentLeftAutoFilterProtectedExecutions, getDutyHours, getFirstNodeInRouteImportance, getFixCost, getImportance, getIndividualOfferedNodeMultiplier, getJointVisitDuration, getJointVisitDurationMillis, getLastKnownAttachedAndRemovedResIds, getLastNodeInRouteImportance, getLoad, getLockdownTime, getMinVisitDuration, getMinVisitDurationMillis, getNode2NodeRelations, getNodeColor, getNodeDepot, getNodeId, getOriginalDutyHours, getQualifications, getStayAtStartDuration, getSubsequentSlaveNodes, getTempImplausibleScore, getTotalLoadDimension, getUnloadAllDimension, getViolations, getVisitDurationMillis, hasFullJobLevelRelations, hashCode, hasRelations, hasRouteDependentVisitDuration, invokeDetachedResourceConstraints, isAllowMoveToReduceFlexTime, isAutoFilterProtected, isCausingIdleTimeCost, isDutyHoursIncludesVisitDuration, isOfferedNode, isOptimizable, isOptional, isReturnStart, isStayNode, isUnassigned, isUnloadAll, isUseJointVisitDuration, isWaitOnEarlyArrival, isWaitOnEarlyArrivalFirstNode, isWorkNode, removeConstraint, removeNode2NodeRelations, resetDutyHoursTempActivation, resetLockdownTime, resetSubsequentSlaveNodes, setAllowMoveToReduceFlexTime, setAutoFilterConstraints, setConstraints, setFirstNodeInRouteImportance, setFixCost, setHasRouteDependentVisitDuration, setImportance, setIndividualOfferedNodeMultiplier, setIsCausingIdleTimeCost, setIsDutyHoursIncludesVisitDuration, setIsOfferedNode, setIsOptional, setIsReturnStart, setIsStayNode, setIsWorkNode, setJointVisitDuration, setLastNodeInRouteImportance, setLoad, setLockdownTime, setMinAutoFilterProtectedExecutions, setMinimalVisitDuration, setNodeColor, setNodeDepot, setNodeId, setOptimizable, setOptimizable, setUnassigned, setUnloadAll, setUnloadAllDimension, setVisitDuration, setVisitDurationMillis, setWaitOnEarlyArrival, setWaitOnEarlyArrivalFirstNode, tempIncreaseImplausibleScore, tempSetActiveDutyHours, toString
Methods inherited from class com.dna.jopt.member.unit.AbstractOptimizationElement
forceSetId, getConstraintAliasId, getDistMatrixId, getExtraInfo, getId, getLatitude, getLocationId, getLongitude, getNodeConnection, getNodeConnectionKeySet, getNodeConnections, getPosition, getPreferredHoursInteractionController, putNodeConnection, putNodeConnectionFromElement, removeNodeConnection, setConstraintAliasId, setDistMatrixId, setDutyHours, setExtraInfo, setId, setLatitude, setLocationId, setLongitude, setPosition
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.dna.jopt.member.unit.IOptimizationElement
forceSetId, getConstraintAliasId, getDistMatrixId, getExtraInfo, getId, getLatitude, getLocationId, getLongitude, getNodeConnection, getNodeConnectionKeySet, getNodeConnections, getPosition, getPreferredHoursInteractionController, putNodeConnection, putNodeConnectionFromElement, removeNodeConnection, setConstraintAliasId, setDistMatrixId, setDutyHours, setExtraInfo, setId, setLatitude, setLocationId, setLongitude, setPosition
-
Constructor Details
-
EventNode
@Deprecated public EventNode(String nodeId, List<IDutyHours> openingHours, int visitDuration, int priority) Deprecated.please useEventNode(String, IOpeningHours, Duration, int)
instead.Deprecated constructor.- Parameters:
nodeId
- the string ID of the nodeopeningHours
- the list of openingHours when the Node can be given servicevisitDuration
- the int duration of the servicepriority
- the int priority
-
EventNode
@Deprecated public EventNode(String nodeId, IDutyHours openingHour, int visitDuration, int priority) Deprecated.please useEventNode(String, IOpeningHours, Duration, int)
instead.Deprecated constructor.- Parameters:
nodeId
- the string ID of the NodeopeningHour
- the iDutyhours when the node can be given servicevisitDuration
- the int duration of the servicepriority
- the int priority
-
EventNode
TheEventNode
has no location and cannot be aPillar
. An example for anEventNode
would be a telephone conference.Implementation example:
// Define Hours List<IOpeningHours> telCoOpeningHours = new ArrayList<>(); telCoOpeningHours.add( new OpeningHours( ZonedDateTime.of(2019, SEPTEMBER.getValue(), 3, 9, 30, 0, 0, ZoneId.of("Europe/Berlin")), ZonedDateTime.of(2019, SEPTEMBER.getValue(), 3, 12, 0, 0, 0, ZoneId.of("Europe/Berlin")))); Duration conferenceDuration = Duration.ofMinutes(45); // Define EventNode EventNode telCo = new EventNode("telCo DNA", telCoOpeningHours, conferenceDuration, 1);
- Parameters:
nodeId
- the string ID of the NodeopeningHour
- the iOpeningHours when the node should be visitedvisitDuration
- the duration of the visitpriority
- the int priority of the node
-
EventNode
public EventNode(String nodeId, List<IOpeningHours> openingHours, Duration visitDuration, int priority) TheEventNode
has no location and cannot be aPillar
. An example for anEventNode
would be a telephone conference.The difference between this constructor and
Implementation example:EventNode(String, IOpeningHours, Duration, int)
is that the latter is setting theIOpeningHours
in the following way:this.setDutyHours(new ArrayList<>(Collections.singletonList(openingHour)));
// Define Hours List<IOpeningHours> telCoOpeningHours = new ArrayList<>(); telCoOpeningHours.add( new OpeningHours( ZonedDateTime.of(2019, SEPTEMBER.getValue(), 3, 9, 30, 0, 0, ZoneId.of("Europe/Berlin")), ZonedDateTime.of(2019, SEPTEMBER.getValue(), 3, 12, 0, 0, 0, ZoneId.of("Europe/Berlin")))); Duration conferenceDuration = Duration.ofMinutes(45); // Define EventNode EventNode telCo = new EventNode("telCo DNA", telCoOpeningHours, conferenceDuration, 1);
- Parameters:
nodeId
- the string ID of the nodeopeningHours
- the iOpeningHours when service can be give to the nodevisitDuration
- the duration of the visitpriority
- the int priority
-
EventNode
@Deprecated public EventNode(String nodeId, IDutyHours[] openingHours, int visitDuration, int priority) Deprecated.please useEventNode(String, IOpeningHours, Duration, int)
orEventNode(String, List, Duration, int)
instead.- Parameters:
nodeId
- the node idopeningHours
- the opening hoursvisitDuration
- the visit durationpriority
- the priority- Category:
- Legacy
LEGACY CONSTRUCTOR
Instantiates a new time window geo node.
PLEASE DO NOT USE THIS CONSTRUCTOR ANYMORE! IT WILL BE REMOVED IN FUTURE VERSIONS
-
-
Method Details
-
getFlavour
Description copied from interface:IOptimizationElement
Gets the flavour which spells out the kind ofNode
of the element.- Returns:
- the flavour
-
hasRealGeoLocation
public boolean hasRealGeoLocation()Gets whether thisNode
has a location. Since this is anEventnode
the response always isfalse
.- Returns:
- false, since
EventNode
-
isPillarNode
public boolean isPillarNode()Checks, whether thisNode
is aPillarNode
. Since this is anEventNode
the response always isfalse
.- Returns:
- false, since
EventNode
- See Also:
-
setIsPartialExchangeIdleForDrivingTime
public void setIsPartialExchangeIdleForDrivingTime(boolean isPartialExchangeIdleForDrivingTime) -
isPartialExchangeIdleForDrivingTime
public boolean isPartialExchangeIdleForDrivingTime()
-
EventNode(String, IOpeningHours, Duration, int)
orEventNode(String, List, Duration, int)
instead.