概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.1.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.util
クラス TagBuffer

    java.lang.Object
      org.opengion.fukurou.util.TagBuffer

    public final class TagBuffer

extends Object

TagBuffer.java は、共通的に使用される 簡易タグ作成クラスです。 タグヘッダーは、オブジェクト作成時に登録する為、後の変更は出来ません。 BODY部や、属性は、一度登録すると書き換えできません。 また、同一属性チェックは行いません。登録した属性のキーや、値を取り出すことも出来ません。 あくまで、タグ文字列をストレートに作成することに特化したクラスです。 これらの高度な機能が必要であれば、`Attributes` をご参照ください。 makeTag() メソッドを呼び出した時点で、内部にタグ文字列をキャッシュします。 それ以降の変更は、出来ません。 内部的には、構造化されていません。あくまで、文字列連結（StringBuilder)の 簡易クラスとして、使用してください。

バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

コンストラクタの概要
`TagBuffer()` デフォルトコンストラクター このコンストラクターを使用すると、タグ名を指定できないため、 完成形のタグは、作成できません。
`TagBuffer(String tagName)` コンストラクター タグ名に null を指定すると、デフォルトコンストラクターと同様に、 完成形のタグは、作成できません。

メソッドの概要
`void` | `add(String str)` タグの属性に、追加登録します。
`void` | `add(String key, String val)` タグの 属性(key="value")を登録します。
`String` | `makeTag()` タグの 整形された文字列を 作成します。
`String` | `makeTag(int rowNo, String val)` 行番号付きのタグの 整形された文字列を 作成します。
`void` | `setBody(String body)` タグの BODY部を登録します。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

コンストラクタの詳細

### TagBuffer

    public TagBuffer()

  デフォルトコンストラクター このコンストラクターを使用すると、タグ名を指定できないため、 完成形のタグは、作成できません。属性リスト（key="value")の 連結形式を得る場合にのみ、使用して下さい。

### TagBuffer

    public TagBuffer(String tagName)

  コンストラクター タグ名に null を指定すると、デフォルトコンストラクターと同様に、 完成形のタグは、作成できません。属性リスト（key="value")の 連結形式を得る場合にのみ、タグ名 にnull を指定して下さい。

  パラメータ:
    `tagName` - タグ名称

メソッドの詳細

### setBody

    public void setBody(String body)

  タグの BODY部を登録します。 登録しない場合は、BODY部のないタグ（空要素タグ）を生成します。 BODY部を指定すると、<tagName key="val" ･･･ >body</tagName> 形式になります。 BODY部が、null の場合は、 <tagName key="val" ･･･ /> 形式になります。 このメソッドは、makeTag() が呼ばれた後は、登録できなくなります。

  パラメータ:
    `body` - タグのBODY部

### add

    public void add(String key,
                    String val)

  タグの 属性(key="value")を登録します。 属性は、key="value" の文字列を作成します。key か、value のどちらかが null の場合は、登録しません。 value に、ダブルコーテーション(")が含まれている場合は、属性値をシングルコーテーション でくくります。 両方含まれている場合は、シングルコーテーションをエスケープ文字に変換します。 このメソッドは、makeTag() が呼ばれた後は、登録できなくなります。

  パラメータ:
    `key` - 属性キー (null の場合は、なにもしない）
    `val` - 属性値 (null の場合は、なにもしない）
  変更履歴:

    3.8.6.1 (2006/10/20) シングルとダブルが混在する場合は、シングルをエスケープする

### add

    public void add(String str)

  タグの属性に、追加登録します。 文字列として、key="value" の形式データを与えてください。連結時は、後ろに スペースを一つ挟みますので、与える引数自体に連結用スペースを追加しておく 必要はありません。 通常は、tagName なしで作成した、Tagbuffer オブジェクトの makeTag() メソッドの 返り値を渡しますが、Attributes.getAttribute() の返り値でも使用できます。 引数が null の場合は、なにもしません。 このメソッドは、makeTag() が呼ばれた後は、登録できなくなります。

  パラメータ:
    `str` - String タグバッファーを追加します。
  関連項目:
    `makeTag()`, `Attributes.getAttribute()`

### makeTag

    public String makeTag()

  タグの 整形された文字列を 作成します。 このメソッドは、tagName,body,属性より タグの完成形の文字列を作成します。 作成された文字列は、内部でキャッシュされます。 BODY部を指定すると、<tagName key="val" ･･･ >body</tagName> 形式になります。 BODY部が、null の場合は、 <tagName key="val" ･･･ /> 形式になります。 タグ名を指定しない（null)と、完成形のタグは、作成できません。 属性リスト（key="value")の連結形式を返します。 このメソッドの呼び出し以降では、setBody() も add() も実行できません。

  戻り値:
    整形された タグ文字列

### makeTag

    public String makeTag(int rowNo,
                          String val)

  行番号付きのタグの 整形された文字列を 作成します。 このメソッドは、makeTag() の結果より、[I] 文字列を引数の行番号と変換します。 これにより、動的に行番号つきの情報を属性に付与することが可能になります。 内部にキャッシュされる値は、[I] 記号を変換していない状態の文字列です。 よって、このメソッドは、rowNo を変えて、何度でも呼び出すことは可能ですが、 setBody() や add() は実行できません。

  パラメータ:
    `rowNo` - int 行番号([I] 文字列を変換します。)
    `val` - String 設定値([V] 文字列を変換します。)
  戻り値:
    整形された タグ文字列

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.1.6.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Webアプリケーションフレームワーク openGion
Copyright (c) 2009 The openGion Project.