Class DataReadHandler

java.lang.Object
nablarch.fw.handler.DataReadHandler
All Implemented Interfaces:
Handler<Object,Result>

public class DataReadHandler extends Object implements Handler<Object,Result>
業務コンポーネントで処理するデータをDataReaderから読み込む Handler実装クラス。

DataReaderから読み込んだデータをリクエストとして、 後続のハンドラに処理を委譲する。
データが存在しない場合(読み込んだデータがnull)の場合は、 後続のハンドラに処理は移譲せずにDataReader.NoMoreRecordを返却する。

  • Constructor Details

    • DataReadHandler

      public DataReadHandler()
  • Method Details

    • handle

      public Result handle(Object o, ExecutionContext context)
      入力データに対する処理を実行する。
      Specified by:
      handle in interface Handler<Object,Result>
      Parameters:
      o - 入力データ
      context - 実行コンテキスト
      Returns:
      処理結果データ
    • writeWarnLog

      protected void writeWarnLog(Object requestData, Throwable t)
      ワーニングログを出力する。
      Parameters:
      requestData - リクエストデータ
      t - 例外情報
    • setMaxCount

      public DataReadHandler setMaxCount(int maxCount)
      データ読み込みの上限回数を指定する。

      上限に達した段階で、実行コンテキスト上のreaderを除去する。 それ以降は、ExecutionContext#hanNextData() の結果は常にfalseを返す。 デフォルトの設定値は0 (=無制限)

      なお、この値に正数を指定している場合は、読み込み回数のカウントアップの際に 同期処理が行われる。

      Parameters:
      maxCount - データ読み込みの上限回数。 0もしくは負数を設定した場合は無制限。
      Returns:
      このオブジェクト自体
    • setExecutionIdAttribute

      public DataReadHandler setExecutionIdAttribute(ExecutionIdAttribute attribute)
      実行時IDを初期化する際に使用するを設定する。
      Parameters:
      attribute - 実行時IDを初期化する
      Returns:
      このオブジェクト自体。executionIdAttribute