Package nz.org.riskscape.wizard.ask
package nz.org.riskscape.wizard.ask
-
ClassDescriptionAn
Asker
forFunctionCallPrototype
s that will ask extra questions if the chosen aggregation function requires extra arguments for it's configuration.Provides a bridge between having a nice CLI UX (via the CompositeAsker) and accepting any aggregate expression for the wizard questions (which simplifies the config and means you can still do some advanced expression-y things with a plain old wizard model).Drives aCliPrompter
to make it easier for the user to answer it correctly for a particularQuestion
Brings together all the arguments to ask in to a single request-like object to make it easier to extend/tweak in the future.Default implementationBase implementation of an Asker that cuts down on boiler plate and also binds the user's input (for validation purposes) before returning the unbound value back to the survey (to make sure that it will bind and the UI isn't doing some magic it's not allowed to - keep in mind that while this UI is part of the same process as the riskscape engine, the wizard has been built so that it can work with a future web UI without huge amounts of re-work)Asker
for getting an answer that is a boolean yieldingExpression
, such as for a filter condition.Comparison operators that are supported by the asker.Represents the user choice in how to answer the attribute value part of the question, should there be a lot of potential values in a list.ChoiceAsker<T>Compatibility shim to avoid having to change all the askers now that AskRequest existsAnAsker
for getting anExpression
answer that allows the user to either enter the expression themselves, or to build the expression interactively viaExpressionAsker.askInteractively(nz.org.riskscape.wizard.CliPrompter, nz.org.riskscape.wizard.ExpressionHelper)
Determines whether the user wants to provide a custom expression manually, or build an expression interactively in the wizard.