Class EveryMetroUsedConstraint
java.lang.Object
com.eqixiac.equinix.design.constraint.EveryMetroUsedConstraint
- All Implemented Interfaces:
Constraint
Every metro of a design must carry a workload (primary or standby) or a cloud connection. A metro
that carries nothing costs nothing in the model and would otherwise be added for free; it is not a
real deployment. Applies only when the spec has workloads or clouds.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncheck(MetroPortfolio portfolio, DesignContext context) Checks a whole portfolio.id()Methods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface Constraint
admits, usesCostModifier and TypeMethodDescriptiondefault booleanadmits(MetroFacts metro, DesignContext context) Cheap per-metro pruning before portfolios are formed.default booleanusesCost()WhetherConstraint.check(MetroPortfolio, DesignContext)prices the portfolio throughDesignContext.costModel().
-
Field Details
-
ID
-
-
Constructor Details
-
EveryMetroUsedConstraint
public EveryMetroUsedConstraint()
-
-
Method Details
-
id
- Specified by:
idin interfaceConstraint- Returns:
- a stable id, lower_snake_case (for example
max_latency)
-
check
Description copied from interface:ConstraintChecks a whole portfolio.- Specified by:
checkin interfaceConstraint- Parameters:
portfolio- the candidate designcontext- the facts of this run- Returns:
- the verdict with its reason
-