Class AsyncTaskOption

java.lang.Object
org.iplass.mtp.async.AsyncTaskOption

public class AsyncTaskOption extends Object
非同期タスクの実行オプションを表すクラスです。 実行時の設定(キュー名、実行モードなど)を指定可能です。
  • Field Details

    • DEFAULT_QUEUE_NAME

      public static final String DEFAULT_QUEUE_NAME
      デフォルトキューを指し示すキュー名です。値は"default"です。
      See Also:
    • LOCAL_THREAD_QUEUE_NAME

      public static final String LOCAL_THREAD_QUEUE_NAME
      ローカルスレッドで実行する際のキュー名です。値は"localThread"です。
      See Also:
  • Constructor Details

    • AsyncTaskOption

      public AsyncTaskOption()
      デフォルトの実行設定、デフォルトのキューで実行するAsyncTaskOptionを構築します。 実際のオプションの値は、 queue=AsyncTaskOption.DEFAULT_QUEUE_NAME, groupingKey=null, startMode=StartMode.AFTER_COMMIT, exceptionHandlingMode=ExceptionHandlingMode.RESTART, returnResult=false, executionTime=0 で初期化されます。
    • AsyncTaskOption

      public AsyncTaskOption(boolean returnResult)
      returnResult以外をデフォルト設定、デフォルトのキューで実行するAsyncTaskOptionを構築します。 実際のオプションの値は、 queue=AsyncTaskOption.DEFAULT_QUEUE_NAME, groupingKey=null, startMode=StartMode.AFTER_COMMIT, exceptionHandlingMode=ExceptionHandlingMode.RESTART, executionTime=0 で初期化されます。
      Parameters:
      returnResult - この非同期タスクが結果値を返す場合はtrue
    • AsyncTaskOption

      public AsyncTaskOption(String queue, String groupingKey, StartMode startMode, ExceptionHandlingMode exceptionHandlingMode, boolean returnResult, long executionTime)
      AsyncTaskOptionのコンストラクタです。
      Parameters:
      queue - キュー名
      groupingKey - グループキー
      startMode - 非同期処理開始モード
      exceptionHandlingMode - 例外処理モード
      returnResult - 非同期処理が結果を返す場合true
      executionTime - 実行開始時間。現在時間以下の場合は、即座に開始。
  • Method Details

    • queue

      public AsyncTaskOption queue(String queue)
      キュー名を指定します。
      Parameters:
      queue -
      Returns:
    • groupingKey

      public AsyncTaskOption groupingKey(String groupingKey)
      一連のタスクをグループ化するgroupingKeyを指定します。 groupingKeyを設定すると、そのグループのタスクは必ず同一のタスク実行Workerで実行されるようになります。 「厳密な実行順」を設定されたキューを利用し、このgroupingKeyを指定した場合、 そのgroupingKeyにおいてタスクの実行順序を保障することが可能となります。
      Parameters:
      groupingKey -
      Returns:
    • startMode

      public AsyncTaskOption startMode(StartMode startMode)
      非同期タスクの開始方法を指定します。
      Parameters:
      startMode -
      Returns:
    • exceptionHandlingMode

      public AsyncTaskOption exceptionHandlingMode(ExceptionHandlingMode exceptionHandlingMode)
      例外発生時の処理方法を指定します。
      Parameters:
      exceptionHandlingMode -
      Returns:
    • returnResult

      public AsyncTaskOption returnResult()
      非同期タスクが処理結果を返却することを指定します。 処理結果を返す場合は、AsyncTaskFuture.get()で結果の取得が可能です。
      Returns:
    • executionTime

      public AsyncTaskOption executionTime(long executionTime)
      非同期処理の開始時間を指定します。 現在時間より前が指定された場合はタスクが登録完了後、即座に開始されます。
      Parameters:
      executionTime -
      Returns:
    • getExecutionTime

      public long getExecutionTime()
    • setExecutionTime

      public void setExecutionTime(long executionTime)
    • getExceptionHandlingMode

      public ExceptionHandlingMode getExceptionHandlingMode()
    • setExceptionHandlingMode

      public void setExceptionHandlingMode(ExceptionHandlingMode exceptionHandlingMode)
    • getQueue

      public String getQueue()
    • setQueue

      public void setQueue(String queue)
    • getGroupingKey

      public String getGroupingKey()
    • setGroupingKey

      public void setGroupingKey(String groupingKey)
    • getStartMode

      public StartMode getStartMode()
    • setStartMode

      public void setStartMode(StartMode startMode)
    • isReturnResult

      public boolean isReturnResult()
    • setReturnResult

      public void setReturnResult(boolean returnResult)