Interface IRouteFinalizer

All Known Implementing Classes:
RouteFinalizer2

public interface IRouteFinalizer
The Interface IRouteFinalizer.

Route finalization means that a certain route is defined as finalized route. All other entities will have to take over this route. It is not longer possible to modify this route.

  • Method Details

    • finalizeRoute

      void finalizeRoute(List<IEntity> entities, ILogicEntityRoute targetRoute, com.dna.jopt.assessment.costassessor.IEntityCostAssessor ca, Optional<Long> lockdownTime, Optional<Long> prevLockdownTime, boolean asLockdown)
      Finalize route.

      It is assumed that first item of the entities list is the master entity that will provide the route to be finalized.

      Parameters:
      entities - the entities
      targetRoute - the target route
      ca - the ca
      lockdownTime - the lockdown time
      prevLockdownTime - the prev lockdown time
      asLockdown - the as lockdown
    • finalizeElements

      void finalizeElements(List<IEntity> entities, ILogicEntityRoute targetRoute, List<IOptimizationElement> finalizeElements, List<IPillarNode> finalizePillars, Optional<Long> lockdownTime, Optional<Long> prevLockdownTime)
      Finalize element. It is assumed that first item of the entities list is the master entity that will provide the route with the elements to be finalized. The finalization will take in the order of finalizeElements occurrence of the list.
      Parameters:
      entities - the entities
      targetRoute - the target route
      finalizeElements - the finalize elements
      finalizePillars - the finalize pillars
      lockdownTime - the lockdown time
      prevLockdownTime - the prev lockdown time
    • activateRoute

      boolean activateRoute(List<IEntity> entities, int finalizeRouteIndex, com.dna.jopt.assessment.costassessor.IEntityCostAssessor ca, Optional<Long> curLockStopMillisOpt)
      Activate route.
      Parameters:
      entities - the entities
      finalizeRouteIndex - the finalize route index
      ca - the ca
      curLockStopMillisOpt - the cur lock stop millis opt
      Returns:
      true, if successful
    • finalizeRoute

      void finalizeRoute(IEntity masterEntity, List<IEntity> entities, ILogicEntityRoute targetRoute, com.dna.jopt.assessment.costassessor.IEntityCostAssessor ca, Optional<Long> lockdownTime, Optional<Long> prevLockdownTime, boolean asLockdown)
      Finalize element based on a selected master entity. The master entity is the entity that will provide the route with the elements to be finalized. The finalization will take in the order of finalizeElements occurrence of the list.
      Parameters:
      masterEntity - the master entity
      entities - the entities
      targetRoute - the target route
      ca - the ca
      lockdownTime - the lockdown time
      prevLockdownTime - the prev lockdown time
      asLockdown - the as lockdown