Interface IMultiWorkingHoursLevelConstraint

All Known Implementing Classes:
AbsoluteNodeColorMultiRouteConstraint, AbstractMultiWorkingHoursLevelConstraint, NodeColorMultiRouteConstraint

public interface IMultiWorkingHoursLevelConstraint
  • Method Details

    • addItem

      boolean addItem(String ownerId, IWorkingHours hours)
    • getMirrorItem

    • initUpdate

    • needsFullJobLevelEvaluation

      boolean needsFullJobLevelEvaluation()
      Needs full job level evaluation.

      In case the constraint needs to access for example arrival times etc. of all nodes of a route. The cost assessor will ask if the constraint requires this and will save the data for the nodes carrying this constraint.

      Returns:
      boolean true if successful
    • isActive

      boolean isActive()
    • assessConstraint

      com.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResult assessConstraint(IEntity en, ILogicEntityRoute triggerRoute, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster iEntityCostAdjuster, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider iPropertyProvider, boolean resultRequested)
    • getTitle

      String getTitle()
    • getCurrentCost

      Double getCurrentCost(ILogicEntityRoute route)
    • setCurrentCost

      void setCurrentCost(ILogicEntityRoute route, Double cost)
    • addCurrentCost

      void addCurrentCost(ILogicEntityRoute route, Double addCost)
    • assessConstraint

      com.dna.jopt.assessment.costassessorrestriction.restrictionresult.IEntityRestrictionResult assessConstraint(IEntity en, ILogicEntityRoute triggerRoute, List<ILogicEntityRoute> routes, com.dna.jopt.assessment.costadjustment.IEntityCostAdjuster costAdjuster, com.dna.jopt.framework.inputplausibility.properties.IPropertyProvider propertyProvider, boolean resultRequested)