パッケージ SDK を使用した条件の作成

Automation 360 を使用する場合は、SDK パッケージを使用して条件を作成することができます。

条件の使用

Automation 360 では、条件 および ループ は分岐構造です。条件が true に設定されたときに一連のアクションを実行する目的で使用されます。条件は、条件 および ループ パッケージとともに使用されます。条件は一連の入力を受け取って、ブール値を返します。

必要な注釈

条件を作成するには、次の注釈が必要です。

注釈 使用状況
BotCommand conditioncommandType として BotCommand 注釈を使用します。これにより、POJO (plain old Java object) が Automation 360 の条件の作成に適するようになります。
CommandPkg これらの値は、パッケージの作成時に使用されます。注釈に名前、ラベル、説明を指定します。
Idx 検証チェックに役立つよう、必要なすべてのパラメーターとメンバー変数に注釈を付けます。これらは、入力時のインターフェースに表示することもできます。インデックス (Idx) とタイプを指定します。
Pkg インターフェースに表示するすべてのパラメーターとメンバー変数に注釈を付けます。Idx が付いていない注釈は無視されます。
ConditionTest 条件をテストするために呼び出す必要があるメソッド。ブール値を返す必要があります。メソッドがパラメーターを受け付ける場合は、Idx の注釈を付けます。

ユース ケース例

次のユース ケースでは、指定された数字が他の数字より大きいかどうかを確認します。

  1. 次のビジネス ロジックを持つ POJO クラスを作成します。
    public class IsGreater {
    
    	public Boolean checkGreater(Double first, Double checkAgainst) {
    		return first > checkAgainst;
    	}
    
    }
  2. POJO クラスに注釈を付けることで Automation 360 条件に対して有効にし、パッケージを作成します。
    @BotCommand(commandType = Condition)
    @CommandPkg(label = "Is greater condition", name = "IsGreater",
    	description = "Checks if the given number is greater than the other.", node_label = "{{first}} > {{checkAgainst}} ")
    public class IsGreater {
    	public Boolean checkGreater(Double first, Double checkAgainst) {
    		return first > checkAgainst;
    	}
    }
  3. checkGreater メソッドに注釈を付けて、このメソッドを比較メソッドとして使用する必要があることを示します。
    @ConditionTest
    public Boolean checkGreater(Double first, Double checkAgainst) {
    	return first > checkAgainst;
    }

    条件ごとにテスト条件メソッドが 1 つ必要です。

  4. checkGreater メソッドのパラメーターに IdxPkg で注釈を付けます。

    @NotEmpty を追加して、値が null にならないようにします。

    @ConditionTest
    public Boolean checkGreater(
    	@Idx(index = "1", type = AttributeType.NUMBER) @Pkg(label = "Number to check") @NotEmpty Double first,
    
    	@Idx(index = "2", type = AttributeType.NUMBER) @Pkg(label = "Number to compare against") @NotEmpty Double checkAgainst) {
    
    	return first > checkAgainst;
    }

    属性の型番号は Double を返します。