Package nz.org.riskscape.wizard.ask
Class IdentifiedAsker
java.lang.Object
nz.org.riskscape.wizard.ask.BaseAsker
nz.org.riskscape.wizard.ask.IdentifiedAsker
- All Implemented Interfaces:
Asker
-
Field Summary
Fields inherited from class nz.org.riskscape.wizard.ask.BaseAsker
enumTranslator, translationContext
-
Constructor Summary
ConstructorDescriptionIdentifiedAsker
(nz.org.riskscape.engine.i18n.TranslationContext messageSource) -
Method Summary
Modifier and TypeMethodDescriptionnz.org.riskscape.problem.ResultOrProblems<nz.org.riskscape.wizard.Answer.Response>
ask
(AskRequest request) Get a bound value from the user - note that the response's original input is returned fromBaseAsker.askUnbound(AskRequest)
.boolean
canAsk
(nz.org.riskscape.wizard.bld.IncrementalBuildState buildState, nz.org.riskscape.wizard.Question question) <T extends nz.org.riskscape.engine.Identified>
nz.org.riskscape.problem.ResultOrProblems<nz.org.riskscape.wizard.Answer.Response>chooseIdentified
(CliPrompter cliPrompter, nz.org.riskscape.wizard.bld.IncrementalBuildState buildState, nz.org.riskscape.wizard.Question chosen, nz.org.riskscape.engine.IdentifiedCollection<T> idCollection, Predicate<T> filterCondition) Methods inherited from class nz.org.riskscape.wizard.ask.BaseAsker
askUnbound, getChoices, getLocale, getMessage, getMessageSource, getOptionalMessage, toChoice
-
Constructor Details
-
IdentifiedAsker
public IdentifiedAsker(nz.org.riskscape.engine.i18n.TranslationContext messageSource)
-
-
Method Details
-
canAsk
public boolean canAsk(nz.org.riskscape.wizard.bld.IncrementalBuildState buildState, nz.org.riskscape.wizard.Question question) Description copied from interface:Asker
Determine whether this
Asker
is relevant for the givenQuestion
andIncrementalBuildState
- Returns:
- true if this
Asker
can and should drive the cli to answer the givenQuestion
.
-
ask
public nz.org.riskscape.problem.ResultOrProblems<nz.org.riskscape.wizard.Answer.Response> ask(AskRequest request) Description copied from class:BaseAsker
Get a bound value from the user - note that the response's original input is returned from
BaseAsker.askUnbound(AskRequest)
. This is partly here because the original API exposed this method on the interface, and keeping this method here keeps the refactoring/change noise down to a minimum while allowing the interface to change in the way we want to preserve the right amount of encapsulation -
chooseIdentified
public <T extends nz.org.riskscape.engine.Identified> nz.org.riskscape.problem.ResultOrProblems<nz.org.riskscape.wizard.Answer.Response> chooseIdentified(CliPrompter cliPrompter, nz.org.riskscape.wizard.bld.IncrementalBuildState buildState, nz.org.riskscape.wizard.Question chosen, nz.org.riskscape.engine.IdentifiedCollection<T> idCollection, Predicate<T> filterCondition)
-