Interface CommandInvoker

All Superinterfaces:
Manager

public interface CommandInvoker extends Manager
Commandをコード中より呼び出す際に利用するインタフェースです。 CommandInvokerを利用してCommandを呼び出す場合と、直接Commandのexecuteを呼び出す場合の違いは、 CommandInterceptorの処理(トランザクション制御など)が実行されるか否かです。
  • Method Details

    • execute

      String execute(String cmdName, RequestContext request)
      指定のcmdNameのCommandのインスタンスを指定のrequestで呼び出します。
      Parameters:
      cmdName - Command定義の名前(CommandDefinitionで定義した際の名前、CommandClassアノテーションで指定したname)
      request - RequestContextのインスタンス
      Returns:
      Commandが返却する結果ステータス
    • execute

      String execute(String cmdName, RequestContext request, TransactionOption transactionOption)
      指定のcmdNameのCommandのインスタンスを指定のrequest、transactionOptionで呼び出します。
      Parameters:
      cmdName - Command定義の名前(CommandDefinitionで定義した際の名前、CommandClassアノテーションで指定したname)
      request - RequestContextのインスタンス
      transactionOption - トランザクション制御設定
      Returns:
      Commandが返却する結果ステータス
    • execute

      String execute(Command cmd, RequestContext request)
      指定のcmdを指定のrequestで呼び出します。
      Parameters:
      cmd - Commandのインスタンス
      request - RequestContextのインスタンス
      Returns:
      Commandが返却する結果ステータス
    • execute

      String execute(Command cmd, RequestContext request, TransactionOption transactionOption)
      指定のcmdを指定のrequest、transactionOptionで呼び出します。
      Parameters:
      cmd - Commandのインスタンス
      request - RequestContextのインスタンス
      transactionOption - トランザクション制御設定
      Returns:
      Commandが返却する結果ステータス
    • getCommandInstance

      Command getCommandInstance(String cmdName)
      指定のcmdNameのCommandの新規インスタンスを取得します。 指定したCommandをexecute(Command, RequestContext)で実行することが可能です。 呼び出し前にCommandの初期化処理(メンバ変数の値の設定)を行うことが可能です。
      Parameters:
      cmdName - Command定義の名前(CommandDefinitionで定義した際の名前、CommandClassアノテーションで指定したname)
      Returns:
      Commandが返却する結果ステータス
    • executeAsync

      long executeAsync(String asyncCmdName, AsyncRequestContext request)
      指定のasyncCmdNameで定義される非同期Commandを指定のrequestで実行します。 非同期Commandは、AsyncTaskManager経由で実行されます。
      Parameters:
      asyncCmdName - AsyncCommand定義の名前(AsyncCommandDefinitionで定義した際の名前、AsyncCommandアノテーションで指定したname)
      request - 非同期Commandへのrequest
      Returns:
      非同期タスクのタスクID
      See Also:
    • executeAsync

      long executeAsync(String asyncCmdName, AsyncRequestContext request, ResultHandler resultHandler)
      指定のasyncCmdNameで定義される非同期Commandを指定のrequestで実行します。 非同期Commandは、AsyncTaskManager経由で実行されます。 resultHandlerにて、Commandの実行ステータスによる処理を設定することが可能です。 ResultHandlerの標準提供の実装として、WriteToEntityHandlerがあります。
      Parameters:
      asyncCmdName - AsyncCommand定義の名前(AsyncCommandDefinitionで定義した際の名前、AsyncCommandアノテーションで指定したname)
      request - 非同期Commandへのrequest
      resultHandler - ResultHandlerのインスタンス(Serializbleの必要あり)
      Returns:
       非同期タスクのタスクID
      See Also: