If 条件のための条件をカスタム パッケージに追加

カスタム パッケージに条件を追加します。

アクション で条件の値を作成

  • 条件を作成するには、BotCommand 注釈の commandType プロパティに値 Condition を設定します。
  • 条件のエントリ方法を定義するには、注釈 ConditionTest を使用します。
@BotCommand(commandType = Condition)
@CommandPkg(label = "File exists", name = "fileExists",
        description = "Checks if the file exists.",
        node_label = "file exists at {{sourceFilePath}}", icon = "")
public class Exist extends AbstractCondition {
    @ConditionTest
    public boolean test(@Idx(index = "1", type = FILE) @LocalFile @Pkg(label = "File path") @NotEmpty String sourceFilePath,
                        @Idx(index = "2", type = NUMBER) @Pkg(label = "How long you would like to wait for this condition 
                        to be true?(Seconds)",
                                default_value = "0", default_value_type = DataType.NUMBER)
                        @GreaterThanEqualTo("0") @LessThanEqualTo("99999") @NotEmpty @NumberInteger Double waitTimeout) {
 
        // Add the logic to check for the condition
    }   
}

次の例では、指定されたブール値が false であるかどうかを確認します。

commandTypeCondition に設定します。

@BotCommand(commandType = Condition)
@CommandPkg(label = "False condition example", name = "conditionalTypeExample",
        description = "Checks if the boolean value is false.")
public class ConditionalTypeExample {
	
	 @ConditionTest
	    public Boolean validate(
	            @Idx(index = "1", type = AttributeType.BOOLEAN)
	            @VariableType(BOOLEAN)
	            @Pkg(label = "Boolean variable", default_value_type = BOOLEAN) @NotEmpty Boolean variable
	    ) {
	        return variable == null ? false : !variable ;
	    }