Class DataType<F,T>

java.lang.Object
nablarch.core.dataformat.convertor.datatype.DataType<F,T>
Type Parameters:
T - 入出力時のデータの型
F - 入力データが変換されるオブジェクトの型
Direct Known Subclasses:
ByteStreamDataSupport, CharacterStreamDataSupport

@Published(tag="architect") public abstract class DataType<F,T> extends Object
ファイルや電文のストリームを読み書きし、 フィールドへの変換を行うデータタイプが継承すべき抽象基底クラス。
  • Field Details

    • convertEmptyToNull

      protected boolean convertEmptyToNull
      空文字列をnullに変換するフラグ
  • Constructor Details

    • DataType

      public DataType()
  • Method Details

    • initialize

      public abstract DataType<F,T> initialize(Object... args)
      初期化処理を行う。
      Parameters:
      args - データタイプのパラメータ
      Returns:
      初期化されたデータタイプ (通常はthisをリターンする)
    • convertOnRead

      public abstract F convertOnRead(T data)
      入力時に読み込んだデータを変換する。
      Parameters:
      data - フィールドの値データ
      Returns:
      変換後の値
    • convertOnWrite

      public abstract T convertOnWrite(Object data)
      出力時に書き込むデータの変換を行う。
      Parameters:
      data - 書き込みを行うデータ
      Returns:
      変換後の値
    • init

      public DataType<F,T> init(FieldDefinition field, Object... args)
      初期化処理を行う。
      Parameters:
      field - フィールド定義
      args - データタイプのパラメータ
      Returns:
      初期化されたデータタイプ (通常はthisをリターンする)
    • getSize

      public abstract Integer getSize()
      扱うデータ型に応じたデータサイズを返却する。 (固定長データを扱う場合はバイト長、可変長データを扱う場合は文字列長を返却する)
      Returns:
      データサイズ
    • getField

      public FieldDefinition getField()
      フィールド定義を取得する。
      Returns:
      フィールド定義
    • removePadding

      public F removePadding(Object data)
      パディングを取り除く。
      Parameters:
      data - 対象データ
      Returns:
      パディング除去後のデータ
    • setConvertEmptyToNull

      public void setConvertEmptyToNull(boolean convertEmptyToNull)
      空文字列をnullに変換するかを設定する。
      Parameters:
      convertEmptyToNull - 空文字列をnullに変換するならtrue