Class DataRecord

All Implemented Interfaces:
Map<String,Object>

@Published public class DataRecord extends MultipleKeyCaseMap<Object>
データレコード1件分の内容を格納するクラス。

各フィールドの値にMapインタフェースを通じてアクセスできる。
各フィールドの値には、 コンバータによって変換した何れかの型、もしくはnullが格納される。

Author:
Iwauo Tajima
  • Constructor Details

    • DataRecord

      public DataRecord()
  • Method Details

    • getRecordType

      public String getRecordType()
      本レコードのレコードタイプを返却する。
      Returns:
      レコードの種別
    • setRecordType

      public DataRecord setRecordType(String recordType)
      レコードタイプを設定する。
      Parameters:
      recordType - レコードタイプ
      Returns:
      本オブジェクト
    • getValue

      public <T> T getValue(Object key) throws ClassCastException
      指定されたフィールドの値を返却する。
      Type Parameters:
      T - 値の型
      Parameters:
      key - フィールド名称
      Returns:
      フィールドの値
      Throws:
      ClassCastException - 指定した型が実際の型と整合しなかった場合
    • put

      public Object put(String fieldName, Object fieldValue)
      フィールドの値を設定する。

      BigDecimal / String / String[] / byte[] 型のインスタンスはそのまま保持する。
      BigDecimal 以外の Number型は、BigDecimalに変換した上で保持する。
      それ以外の型のインスタンスは、toString()メソッドの結果を文字列として保持する。

      Specified by:
      put in interface Map<String,Object>
      Overrides:
      put in class MultipleKeyCaseMap<Object>
      Parameters:
      fieldName - フィールド名
      fieldValue - 設定する値
      Returns:
      指定したフィールド名の元の値(指定したフィールドが存在しない場合はnull
      Throws:
      IllegalArgumentException - フィールド名がnullまたは空文字の場合
    • getString

      public String getString(String fieldName)
      フィールドの値を文字列型に変換して返却する。
      Parameters:
      fieldName - フィールド名
      Returns:
      フィールドの値(指定したフィールドが存在しない場合はnull
    • getStringArray

      public String[] getStringArray(String fieldName)
      フィールドの値を文字列配列型に変換して返却する。
      Parameters:
      fieldName - フィールド名
      Returns:
      フィールドの値(指定したフィールドが存在しない場合はnull
      Throws:
      ClassCastException - 指定したフィールドの型がString[]でなかった場合
    • getBigDecimal

      public BigDecimal getBigDecimal(String fieldName) throws NumberFormatException
      フィールドの値をBigDecimal型に変換して返却する。
      Parameters:
      fieldName - フィールド名
      Returns:
      フィールドの値(指定したフィールドが存在しない場合はnull
      Throws:
      NumberFormatException - 指定したフィールドの値がBigDecimalに変換できなかった場合
    • getBytes

      public byte[] getBytes(String fieldName) throws ClassCastException
      フィールドの値をバイト列に変換して返却する。
      Parameters:
      fieldName - フィールド名
      Returns:
      フィールドに格納されているバイト列(指定したフィールドが存在しない場合はnull
      Throws:
      ClassCastException - 指定したフィールドの型がbyte[]でなかった場合
    • getRecordNumber

      public int getRecordNumber()
      本レコードのレコード番号を取得する。
      Returns:
      本レコードのレコード番号
    • setRecordNumber

      public DataRecord setRecordNumber(int recordNumber)
      本レコードのレコード番号を設定する。
      Parameters:
      recordNumber - 本レコードのレコード番号
      Returns:
      本オブジェクト