report
クラス FormattedField

java.lang.Object
  上位を拡張 report.FormattedField

 class FormattedField
extends java.lang.Object

編集済みのフィールドの内容


フィールドの概要
private  Field field
          レイアウトのフィールド指定
private  java.util.List<Line> values
          編集結果の行のリスト
 
コンストラクタの概要
FormattedField(Field field)
          レイアウトのフィールド指定で編集済みのフィールドを生成するコンストラクタ。
 
メソッドの概要
private  void addValue(char[] codes, int start, int end, int digits)
          編集結果の内容を行のリストに追加する。
private  void foldJP(java.lang.String value, Field field)
          日本語指向の編集結果文字列の折り返しを行う。
(package private)  FormattedField format(Transformer transformer, int indexOfTarget)
          フィールドの編集を行う。
(package private)  Field getField()
          レイアウトのフィールド指定のゲッタ。
(package private)  java.util.List<Line> getValues()
          編集結果の行のリストのゲッタ。
(package private)  boolean isEmpty()
          編集結果の行が空であるか否かを判定する。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

field

private Field field
レイアウトのフィールド指定


values

private java.util.List<Line> values
編集結果の行のリスト

コンストラクタの詳細

FormattedField

FormattedField(Field field)
レイアウトのフィールド指定で編集済みのフィールドを生成するコンストラクタ。

パラメータ:
field - レイアウトのフィールド指定を渡す。
メソッドの詳細

getField

Field getField()
レイアウトのフィールド指定のゲッタ。


getValues

java.util.List<Line> getValues()
編集結果の行のリストのゲッタ。


isEmpty

boolean isEmpty()
編集結果の行が空であるか否かを判定する。

戻り値:
編集結果の行のリストが空であれば true を、そうでなければ false を返す。

addValue

private void addValue(char[] codes,
                      int start,
                      int end,
                      int digits)
編集結果の内容を行のリストに追加する。

パラメータ:
codes - 編集結果の内容を表す文字の配列 (char[]) を渡す。
start - 編集内容を追加する文字配列の開始インデックス (ゼロ以上) を渡す。
end - 編集結果を追加する文字数を渡す。
digits - 編集結果を追加する文字部分配列の幅桁数 (文字数ではない) を渡す。

foldJP

private void foldJP(java.lang.String value,
                    Field field)
             throws ReportException
日本語指向の編集結果文字列の折り返しを行う。

パラメータ:
value - 折り返しを行う編集結果文字列を渡す。
field - 編集結果に対応するレイアウトのフィールド指定を渡す。
例外:
折り返し処理で異常が起きれば - ReportException を投げる。 特に、フィールドの幅桁数が 1 であるときに日本語全角文字が編集データに指定されていれば ReportException を投げる。
ReportException

format

FormattedField format(Transformer transformer,
                      int indexOfTarget)
                throws ReportException
フィールドの編集を行う。
固定文字列フィールドであればレイアウトで指定された固定文字列をフォーマットする。
編集フィールドであれば、トランスフォーマが保持する編集データの辞書構造を参照して置換文字列を求め、それをフォーマットする。
パッケージ・ユーザが定義したフォーマッタ (FieldFormat) が指定されていればそれを利用して (FieldFormat#format()) フォーマットを行う。
必要であれば、日本語指向の折り返し処理を行って、編集結果を行に分割する。
パッケージ・ユーザが定義したメソッド FieldFormat#format() は、このメソッドから呼び出される。

パラメータ:
transformer - 辞書構造を参照するトランスフォーマを渡す。
戻り値:
編集済みフィールドを返す。
例外:
フィールド編集処理中で異常が起きれば例外 - (ReportException あるいは ReportUserException) を投げる。
ReportException