WaterfallDialog 类

public class WaterfallDialog
extends Dialog

针对提示用户出现一系列问题而优化的对话框。 瀑布图接受将按顺序执行的函数堆栈。 每个瀑布步骤都可以询问用户的问题,用户的响应将作为参数传递给下一个瀑布步骤。

构造函数摘要

构造函数 说明
WaterfallDialog(String dialogId, List<WaterfallStep> actions)

初始化 WaterfallDialog 类的新实例。

方法摘要

修饰符和类型 方法和描述
WaterfallDialog addStep(WaterfallStep step)

向瀑布添加一个新步骤。

java.util.concurrent.CompletableFuture<DialogTurnResult> beginDialog(DialogContext dc, Object options)

当瀑布对话启动并推送到对话堆栈时调用。

java.util.concurrent.CompletableFuture<DialogTurnResult> continueDialog(DialogContext dc)

当瀑布对话为 _continued_时调用,其中它是活动对话,用户使用新活动进行答复。

java.util.concurrent.CompletableFuture<java.lang.Void> endDialog(TurnContext turnContext, DialogInstance instance, DialogReason reason)

对话框结束时调用。

java.lang.String getVersion()

获取表示此对话框版本的唯一字符串。

protected java.util.concurrent.CompletableFuture<DialogTurnResult> onStep(WaterfallStepContext stepContext)

在执行单个瀑布步骤时调用。

java.util.concurrent.CompletableFuture<DialogTurnResult> resumeDialog(DialogContext dc, DialogReason reason, Object result)

当子瀑布对话完成轮次时调用,将控件返回到此对话。

protected java.util.concurrent.CompletableFuture<DialogTurnResult> runStep(DialogContext dc, int index, DialogReason reason, Object result)

执行瀑布对话的步骤。

方法继承自 Dialog

方法继承自 java.lang.Object

java.lang.Object.clone java.lang.Object.equals java.lang.Object.finalize java.lang.Object.getClass java.lang.Object.hashCode java.lang.Object.notify java.lang.Object.notifyAll java.lang.Object.toString java.lang.Object.wait java.lang.Object.wait java.lang.Object.wait

构造函数详细信息

WaterfallDialog

public WaterfallDialog(String dialogId, List actions)

初始化 WaterfallDialog 类的新实例。

参数:

dialogId - 对话框 ID。
actions - 要由调用方定义的可选作。

方法详细信息

addStep

public WaterfallDialog addStep(WaterfallStep step)

向瀑布添加一个新步骤。

参数:

step - 要添加的步骤。

返回:

用于流利调用 AddStep()的瀑布对话。

beginDialog

public CompletableFuture beginDialog(DialogContext dc, Object options)

当瀑布对话启动并推送到对话堆栈时调用。

替代:

WaterfallDialog.beginDialog(DialogContext dc, Object options)

参数:

dc - 这
options - 可选,要传递给对话框的初始信息。

返回:

表示异步作的 CompletableFuture。
     If the task is successful, the result indicates whether the dialog is
     still active after the turn has been processed by the dialog.

continueDialog

public CompletableFuture continueDialog(DialogContext dc)

当瀑布对话为 _continued_时调用,其中它是活动对话,用户使用新活动进行答复。

替代:

WaterfallDialog.continueDialog(DialogContext dc)

参数:

dc - 这

返回:

表示异步作的 CompletableFuture。
     If the task is successful, the result indicates whether the dialog is
     still active after the turn has been processed by the dialog. The
     result may also contain a return value.

endDialog

public CompletableFuture endDialog(TurnContext turnContext, DialogInstance instance, DialogReason reason)

对话框结束时调用。

替代:

WaterfallDialog.endDialog(TurnContext turnContext, DialogInstance instance, DialogReason reason)

参数:

turnContext - 会话当前轮次的上下文。
instance - 当前对话框的实例。
reason - 对话结束的原因。

返回:

表示要执行的工作的任务。

getVersion

public String getVersion()

获取表示此对话框版本的唯一字符串。 如果对话框系统之间的版本更改将发出 DialogChanged 事件。

替代:

WaterfallDialog.getVersion()

返回:

当步骤计数更改时,版本将更改(因为对话框无法评估步骤的内容)。

onStep

protected CompletableFuture onStep(WaterfallStepContext stepContext)

在执行单个瀑布步骤时调用。

参数:

stepContext - 要执行的瀑布步骤的上下文。

返回:

表示要执行的工作的任务。

resumeDialog

public CompletableFuture resumeDialog(DialogContext dc, DialogReason reason, Object result)

当子瀑布对话完成轮次时调用,将控件返回到此对话。

替代:

WaterfallDialog.resumeDialog(DialogContext dc, DialogReason reason, Object result)

参数:

dc - 对话的当前轮次的对话上下文。
reason - 对话恢复的原因。
result - 可选,从调用的对话框返回的值。 返回的值的类型取决于子对话。

返回:

表示异步作的 CompletableFuture

runStep

protected CompletableFuture runStep(DialogContext dc, int index, DialogReason reason, Object result)

执行瀑布对话的步骤。

参数:

dc - 当前对话轮次的 DialogContext
index - 要执行的当前瀑布步骤的索引。
reason - 正在执行瀑布步骤的原因。
result - 由上一瀑布步骤中调用的对话框返回的结果。

返回:

表示要执行的工作的任务。

适用于