abstract class StoryHandlerBase<out T : StoryHandlerDefinition> : StoryHandler, I18nKeyProvider, IntentAware
(source)
Base implementation of StoryHandler. Provides also a convenient implementation of I18nKeyProvider to support i18n.
<init> |
Base implementation of StoryHandler. Provides also a convenient implementation of I18nKeyProvider to support i18n. StoryHandlerBase(mainIntentName: String? = null, i18nNamespace: String = defaultNamespace, breath: Long = defaultBreath) |
breath |
Convenient value to wait before next answer sentence. val breath: Long |
checkPreconditions |
Checks preconditions - if BotBus.end is called, StoryHandlerDefinition.handle is not called and the handling of bot answer is over. open fun checkPreconditions(): BotBus.() -> Any? |
findStoryDefinition |
Finds the story definition of this handler. open fun findStoryDefinition(bus: BotBus): StoryDefinition? |
handle |
Receive a message from the bus. fun handle(bus: BotBus): Unit |
handleAndSwitchStory |
Handles the action and switches the context to the underlying story definition. fun handleAndSwitchStory(bus: BotBus): Unit |
i18n |
open fun i18n(defaultLabel: CharSequence, args: List<Any?>): I18nLabelValue |
i18nKey |
Gets an i18n label with the specified key. Current namespace is used for the categorization. fun i18nKey(key: String, defaultLabel: CharSequence, vararg args: Any?): I18nLabelValue |
newHandlerDefinition |
Instantiates new instance of T. abstract fun newHandlerDefinition(bus: BotBus, data: Any? = null): T |
selectStepFromStoryHandlerAndData |
Selects step from HandlerDef, optional data and StoryDefinition. fun <T : StoryHandlerDefinition> selectStepFromStoryHandlerAndData(def: T, data: Any?, storyDefinition: StoryDefinition?): StoryStep<*>? |
support |
What is the probability of bot support for the current request? open fun support(bus: BotBus): Double |
wrappedIntent |
open fun wrappedIntent(): Intent |
ConfigurableStoryHandler |
A story handler that can be fully configured. Advanced usage only. open class ConfigurableStoryHandler<out T : StoryHandlerDefinition> : StoryHandlerBase<T> |
SimpleStoryHandlerBase |
For simple stories that do not use custom StoryHandlerDefinition. abstract class SimpleStoryHandlerBase : StoryHandlerBase<StoryHandlerDefinition> |