Class RequiredCloudsConstraint

java.lang.Object
com.eqixiac.equinix.design.constraint.RequiredCloudsConstraint
All Implemented Interfaces:
Constraint

public final class RequiredCloudsConstraint extends Object implements Constraint
Every required cloud must be reachable from at least one metro of the design, and every workload must reach each required cloud it names from the metro it is placed in (a workload runs in one metro).
  • Field Details

  • Constructor Details

    • RequiredCloudsConstraint

      public RequiredCloudsConstraint()
  • Method Details

    • id

      public String id()
      Specified by:
      id in interface Constraint
      Returns:
      a stable id, lower_snake_case (for example max_latency)
    • check

      public ConstraintVerdict check(MetroPortfolio portfolio, DesignContext context)
      Description copied from interface: Constraint
      Checks a whole portfolio.
      Specified by:
      check in interface Constraint
      Parameters:
      portfolio - the candidate design
      context - the facts of this run
      Returns:
      the verdict with its reason