Package io.molr.mole.core.support
Class OngoingMissionRun
- java.lang.Object
-
- io.molr.mole.core.support.OngoingMissionRun
-
- Direct Known Subclasses:
OngoingReturningMissionRun
public class OngoingMissionRun extends java.lang.Object
Provides capabilities to control an ongoing mission run
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description class
OngoingMissionRun.ReturnHelper<T>
A helper class to filterMissionState
based onPredicate
ofRunState
provided
-
Constructor Summary
Constructors Constructor Description OngoingMissionRun(Mole mole, reactor.core.publisher.Mono<io.molr.commons.domain.MissionHandle> handle)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description OngoingMissionRun
and()
Gives meaning to method chaining when chaining two unrelated methodsreactor.core.publisher.Mono<io.molr.commons.domain.MissionHandle>
asyncHandle()
void
await(java.util.function.Predicate<io.molr.commons.domain.RunState> runStateValidator)
void
await(java.util.function.Predicate<io.molr.commons.domain.RunState> runStateValidator, java.time.Duration timeout)
reactor.core.publisher.Mono<io.molr.commons.domain.Result>
awaitFinished()
reactor.core.publisher.Mono<io.molr.commons.domain.Result>
awaitFinished(java.time.Duration timeout)
io.molr.commons.domain.MissionHandle
awaitHandle()
void
forget()
Gives meaning to method chaining when the user just wants to trigger aMission
and does not want controlvoid
instruct(io.molr.commons.domain.StrandCommand command)
protected Mole
mole()
OngoingMissionRun.ReturnHelper<io.molr.commons.domain.Result>
returnResult()
OngoingMissionRun.ReturnHelper<io.molr.commons.domain.MissionState>
returnState()
-
-
-
Method Detail
-
and
public OngoingMissionRun and()
Gives meaning to method chaining when chaining two unrelated methods- Returns:
- an instance of
OngoingMissionRun
-
forget
public void forget()
Gives meaning to method chaining when the user just wants to trigger aMission
and does not want control
-
mole
protected Mole mole()
-
awaitFinished
public reactor.core.publisher.Mono<io.molr.commons.domain.Result> awaitFinished(java.time.Duration timeout)
- Parameters:
timeout
- the timeout before onNext signal- Returns:
- a
Mono
ofResult
-
awaitFinished
public reactor.core.publisher.Mono<io.molr.commons.domain.Result> awaitFinished()
- Returns:
- a
Mono
ofResult
-
asyncHandle
public reactor.core.publisher.Mono<io.molr.commons.domain.MissionHandle> asyncHandle()
- Returns:
- a
Mono
ofMissionHandle
-
awaitHandle
public io.molr.commons.domain.MissionHandle awaitHandle()
- Returns:
- the
MissionHandle
represented by thisOngoingMissionRun
-
instruct
public void instruct(io.molr.commons.domain.StrandCommand command)
- Parameters:
command
- theStrandCommand
to be given to runningMission
-
await
public void await(java.util.function.Predicate<io.molr.commons.domain.RunState> runStateValidator)
- Parameters:
runStateValidator
- aPredicate
forRunState
-
await
public void await(java.util.function.Predicate<io.molr.commons.domain.RunState> runStateValidator, java.time.Duration timeout)
- Parameters:
runStateValidator
- aPredicate
forRunState
timeout
- the timeout before onNext signal
-
returnResult
public OngoingMissionRun.ReturnHelper<io.molr.commons.domain.Result> returnResult()
- Returns:
- the
OngoingMissionRun.ReturnHelper
to getResult
-
returnState
public OngoingMissionRun.ReturnHelper<io.molr.commons.domain.MissionState> returnState()
- Returns:
- the
OngoingMissionRun.ReturnHelper
to getMissionState
-
-