Package csw.command.api
Class DemandMatcher
java.lang.Object
csw.command.api.DemandMatcher
- All Implemented Interfaces:
StateMatcher
,Serializable
,scala.Equals
,scala.Product
The DemandMatcher checks the CurrentStatus for equality with the items in the DemandState.
This version tests for equality so it may not work the best with floating point values.
Note: If the withUnits flag is set, the equality check with also compare units. False is the default
so normally units are ignored for this purpose.
param: demand a DemandState that will provide the items for determining completion with the CurrentState param: withUnits when True, units are compared. When false, units are not compared. Default is false. param: timeout a timeout for which the matching should be executed. Once the timeout occurs, complete the match with MatchFailed response and appropriate failure exception.
- See Also:
-
Constructor Summary
ConstructorDescriptionDemandMatcher
(DemandState demand, boolean withUnits, akka.util.Timeout timeout) -
Method Summary
Modifier and TypeMethodDescriptionabstract static R
apply
(T1 v1, T2 v2, T3 v3) boolean
check
(CurrentState current) A predicate to match the current statedemand()
prefix()
The prefix of the destination component for which the current state is being matchedThe name of the state to match forakka.util.Timeout
timeout()
The maximum duration for which the matching is executed if not completed either successfully or unsuccessfullystatic String
toString()
boolean
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface scala.Equals
canEqual, equals
Methods inherited from interface scala.Product
productArity, productElement, productElementName, productElementNames, productIterator, productPrefix
-
Constructor Details
-
DemandMatcher
-
-
Method Details
-
apply
public abstract static R apply(T1 v1, T2 v2, T3 v3) -
toString
-
demand
-
withUnits
public boolean withUnits() -
timeout
public akka.util.Timeout timeout()Description copied from interface:StateMatcher
The maximum duration for which the matching is executed if not completed either successfully or unsuccessfully- Specified by:
timeout
in interfaceStateMatcher
- Returns:
- (undocumented)
-
prefix
The prefix of the destination component for which the current state is being matched- Specified by:
prefix
in interfaceStateMatcher
- Returns:
- the prefix of destination component
-
stateName
The name of the state to match for- Specified by:
stateName
in interfaceStateMatcher
- Returns:
- the name of the state
-
check
A predicate to match the current state- Specified by:
check
in interfaceStateMatcher
- Parameters:
current
- current state to be matched as represented byCurrentState
- Returns:
- true if match is successful, false otherwise
-