Class Node2NodesMultiDayRelation
java.lang.Object
com.dna.jopt.member.unit.relation.node2node.AbstracNode2NodeRelation
com.dna.jopt.member.unit.relation.node2nodes.multiday.Node2NodesMultiDayRelation
- All Implemented Interfaces:
INode2NodeRelation,INodeRelation,INode2MultiNodesRelation,INode2NodesMultiDayRelation,Serializable
public class Node2NodesMultiDayRelation
extends AbstracNode2NodeRelation
implements INode2NodesMultiDayRelation
This interface provides methods which allow to set
relations between
INodes concerning the specific
IResource visiting them.
Example for setting a different visitor among the Nodes "moers" and
"gladbach":
{
@code
INode2NodeVisitorRelation rel = new RelativeVisitor2RelatedNodeRelation();
rel.setIsForcedDifferentVisitor();
rel.setMasterNode(moers);
rel.setRelatedNode(gladbach);
moers.addNode2NodeRelation(rel);
gladbach.addNode2NodeRelation(rel);
}
- Since:
- 03/08/2019
- Version:
- 13/02/2020
- Author:
- DNA
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class com.dna.jopt.member.unit.relation.node2node.AbstracNode2NodeRelation
AbstracNode2NodeRelation.RelationMode -
Constructor Summary
ConstructorsConstructorDescriptionThe constructor for arelationbetween twoNodesthat must be visited by the same or differentResource.Node2NodesMultiDayRelation(List<com.dna.jopt.config.types.RouteElementDetail> anchorDetails) -
Method Summary
Modifier and TypeMethodDescriptioncom.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResultcheckRelation(IEntity en, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider propertyProvider, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster cad, ILogicRouteElementDetailItem masterDetails, List<ILogicRouteElementDetailItem> relatedDetails, boolean resultRequested) com.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResultcheckRelationOld(IEntity en, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider propertyProvider, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster cad, ILogicRouteElementDetailItem masterDetails, List<ILogicRouteElementDetailItem> relatedDetails, boolean resultRequested) voidfilterForWorkingHoursGap(boolean filterForGap) List<com.dna.jopt.config.types.RouteElementDetail>booleanbooleanbooleanbooleanNeeds full job level evaluation.voidsetAnchorDetails(List<com.dna.jopt.config.types.RouteElementDetail> anchorDetails) voidsetIsForcedSameVisitor(boolean isForcedSameVisitor) voidsetIsOverlapAllowed(boolean isOverlapAllowed) voidsetMinimalAnchorDetails(List<com.dna.jopt.config.types.MinimalRouteElementDetail> anchorDetails) Methods inherited from class com.dna.jopt.member.unit.relation.node2node.AbstracNode2NodeRelation
checkRelation, getDetailsOfElement, getMasterNode, getRelatedNode, getRelatedNodes, getRelationMode, getRouteOfElement, isFilterRelatedNodes, setMasterNode, setRelatedNode, setRelatedNodes, setRelationModeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.dna.jopt.member.unit.relation.node2node.INode2NodeRelation
getRelatedNode, getRelatedNodes, setRelatedNode, setRelatedNodesMethods inherited from interface com.dna.jopt.member.unit.relation.node2node.INodeRelation
checkRelation, getMasterNode, getRelationMode, isFilterRelatedNodes, setMasterNode, setRelationMode
-
Constructor Details
-
Node2NodesMultiDayRelation
public Node2NodesMultiDayRelation()The constructor for arelationbetween twoNodesthat must be visited by the same or differentResource. -
Node2NodesMultiDayRelation
-
-
Method Details
-
setMinimalAnchorDetails
public void setMinimalAnchorDetails(List<com.dna.jopt.config.types.MinimalRouteElementDetail> anchorDetails) - Specified by:
setMinimalAnchorDetailsin interfaceINode2NodesMultiDayRelation
-
setAnchorDetails
- Specified by:
setAnchorDetailsin interfaceINode2NodesMultiDayRelation
-
hasValidRelatedItem
public boolean hasValidRelatedItem()- Specified by:
hasValidRelatedItemin interfaceINode2NodeRelation- Overrides:
hasValidRelatedItemin classAbstracNode2NodeRelation
-
getAnchorDetails
- Specified by:
getAnchorDetailsin interfaceINode2NodesMultiDayRelation
-
setIsForcedSameVisitor
public void setIsForcedSameVisitor(boolean isForcedSameVisitor) - Specified by:
setIsForcedSameVisitorin interfaceINode2NodesMultiDayRelation
-
isForcedSameVisitor
public boolean isForcedSameVisitor() -
setIsOverlapAllowed
public void setIsOverlapAllowed(boolean isOverlapAllowed) - Specified by:
setIsOverlapAllowedin interfaceINode2NodesMultiDayRelation
-
isOverlapAllowed
public boolean isOverlapAllowed() -
filterForWorkingHoursGap
public void filterForWorkingHoursGap(boolean filterForGap) - Specified by:
filterForWorkingHoursGapin interfaceINode2NodesMultiDayRelation
-
checkRelation
public com.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResult checkRelation(IEntity en, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider propertyProvider, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster cad, ILogicRouteElementDetailItem masterDetails, List<ILogicRouteElementDetailItem> relatedDetails, boolean resultRequested) - Specified by:
checkRelationin interfaceINode2NodeRelation
-
checkRelationOld
public com.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResult checkRelationOld(IEntity en, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider propertyProvider, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster cad, ILogicRouteElementDetailItem masterDetails, List<ILogicRouteElementDetailItem> relatedDetails, boolean resultRequested) -
needsFullJobLevelEvaluation
public boolean needsFullJobLevelEvaluation()Description copied from interface:INodeRelationNeeds full job level evaluation.In case the relation needs to access for example arrival times etc. of all related nodes e have to save this data for the relation. The cost assessor will ask if the relation requires this and will save the data for the nodes carrying this relation. It is important that every node that is part of a relation is also carrying the relation as object.
- Specified by:
needsFullJobLevelEvaluationin interfaceINodeRelation- Returns:
- boolean true if successful
-