パッケージ org.opengion.fukurou.xml
クラス OGAttributes
java.lang.Object
org.opengion.fukurou.xml.OGAttributes
属性リストをあらわす、OGAttributes クラスを定義します。
属性リストは、キーと値のペアを、並び順で管理しているリストを保持しています。
内部的には、 org.xml.sax.Attributes からの値の設定と、タブの属性の整列を行うための
属性タブ、属性の改行の制御、属性の長さの制御 などを行います。
- 変更履歴:
- 5.1.8.0 (2010/07/01) 新規作成
- 導入されたバージョン:
- JDK6.0,
-
フィールドの概要
フィールド -
コンストラクタの概要
コンストラクタコンストラクタ説明デフォルトトコンストラクター 取りあえず、属性オブジェクトを構築する場合に使用します。OGAttributes
(Attributes attri) 属性タブ、属性リスト、属性改行の有無を指定してのトコンストラクター 属性タブ、属性リストに null を指定すると、デフォルトトコンストラクターの設定と 同じ状態になります。 -
メソッドの概要
修飾子とタイプメソッド説明void
指定のアドレスの属性リストに、属性(キー、値のセット)を設定します。void
属性リストに、属性(キー、値のセット)を設定します。int
属性リストから、指定の属性キーの、アドレスを取得します。getId()
属性リストから、id属性の、属性値を取得します。getKey
(int adrs) 属性リストから、指定の配列番号の、属性キーを取得します。オブジェクトの文字列表現を返します。getVal
(int adrs) 属性リストから、指定の配列番号の、属性値を取得します。属性リストから、指定の属性キーの、属性値を取得します。void
remove
(int adrs) 指定のアドレスの属性リストから、属性情報を削除します。void
setUseCR
(boolean useCR) 属性改行の有無を設定します。void
属性リストの、指定の配列番号に、属性値を設定します。void
属性リストに、指定のキー、属性値を設定します。int
size()
属性リストの個数を取得します。toString()
オブジェクトの文字列表現を返します。
-
フィールド詳細
-
CR_CNT
属性の個数制限。この個数で改行を行う。 4- 関連項目:
-
CR_LEN
属性の長さ制限。これ以上の場合は、改行を行う。 80- 関連項目:
-
-
コンストラクタの詳細
-
OGAttributes
public OGAttributes()デフォルトトコンストラクター 取りあえず、属性オブジェクトを構築する場合に使用します。 属性タブは、改行+タブ、属性リストは、空のリスト、属性改行は、false を初期設定します。 -
OGAttributes
属性タブ、属性リスト、属性改行の有無を指定してのトコンストラクター 属性タブ、属性リストに null を指定すると、デフォルトトコンストラクターの設定と 同じ状態になります。 注意 属性値の正規化は必ず行われます。 属性値に含まれるCR(復帰), LF(改行), TAB(タブ)は、半角スペースに置き換えられます。 XMLの規定では、属性の並び順は保障されませんが、SAXのAttributesは、XMLに記述された順番で 取得できていますので、このクラスでの属性リストも、記述順での並び順になります。- パラメータ:
attri
- 属性リスト- 変更履歴:
- 5.1.9.0 (2010/08/01) id 属性のみ特別にキャッシュしておく。
-
-
メソッドの詳細
-
setUseCR
属性改行の有無を設定します。 タグによって、属性が多くなったり、意味が重要な場合は、属性1つづつに改行を 行いたいケースがあります。 属性改行をtrue に設定すると、属性一つづつで、改行を行います。 false の場合は、自動的な改行処理が行われます。 これは、属性の個数制限(CR_CNT)を超える場合は、改行を行います。- パラメータ:
useCR
- 属性改行の有無(true:1属性単位の改行)- 関連項目:
-
size
属性リストの個数を取得します。- 戻り値:
- 属性リストの個数
-
getKey
属性リストから、指定の配列番号の、属性キーを取得します。- パラメータ:
adrs
- 配列番号- 戻り値:
- 属性キー
-
getVal
属性リストから、指定の配列番号の、属性値を取得します。- パラメータ:
adrs
- 配列番号- 戻り値:
- 属性値
-
getVal
属性リストから、指定の属性キーの、属性値を取得します。 この処理は、属性リストをすべてスキャンして、キーにマッチする 属性オブジェクトを見つけ、そこから、属性値を取り出すので、 パフォーマンスに問題があります。 基本的には、アドレス指定で、属性値を取り出すようにしてください。- パラメータ:
key
- 属性キー- 戻り値:
- 属性値
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
getAdrs
属性リストから、指定の属性キーの、アドレスを取得します。 どちらかというと、キーの存在チェックに近い処理を行います。 この処理は、属性リストをすべてスキャンして、キーにマッチする 属性オブジェクトを見つけ、そこから、属性値を取り出すので、 パフォーマンスに問題があります。- パラメータ:
key
- 属性キー- 戻り値:
- アドレス キーが存在しない場合は、-1 を返す。
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
getId
属性リストから、id属性の、属性値を取得します。 id属性 は、内部的にキャッシュしており、すぐに取り出せます。 タグを特定する場合、一般属性のキーと値で選別するのではなく、 id属性を付与して選別するようにすれば、高速に見つけることが可能になります。- 戻り値:
- id属性値
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
setVal
属性リストの、指定の配列番号に、属性値を設定します。- パラメータ:
adrs
- 配列番号val
- 属性値- 変更履歴:
- 5.1.9.0 (2010/08/01) id 属性のみ特別にキャッシュしておく。
-
setVal
属性リストに、指定のキー、属性値を設定します。 もし、属性リストに、指定のキーがあれば、属性値を変更します。 なければ、最後に追加します。- パラメータ:
key
- 属性キーval
- 属性値- 変更履歴:
- 5.6.1.2 (2013/02/22) 新規追加
-
add
属性リストに、属性(キー、値のセット)を設定します。 属性リストの一番最後に、属性(キー、値のセット)を設定します。- パラメータ:
key
- 属性リストのキーval
- 属性リストの値- 変更履歴:
- 5.1.9.0 (2010/08/01) id 属性のみ特別にキャッシュしておく。
-
add
指定のアドレスの属性リストに、属性(キー、値のセット)を設定します。 指定のアドレスの属性を置き換えるのではなく追加します。- パラメータ:
adrs
- 属性リストのアドレスkey
- 属性リストのキーval
- 属性リストの値- 変更履歴:
- 5.1.9.0 (2010/08/01) id 属性のみ特別にキャッシュしておく。
-
remove
指定のアドレスの属性リストから、属性情報を削除します。 指定のアドレスの属性を置き換えるのではなく追加します。- パラメータ:
adrs
- 属性リストのアドレス- 変更履歴:
- 5.1.9.0 (2010/08/01) id 属性のみ特別にキャッシュしておく。
-
getText
オブジェクトの文字列表現を返します。 属性については、並び順は、登録順が保障されます。 属性は、3つのパターンで文字列化を行います。 ・useCR=true の場合 この場合は、属性を1行ずつ改行しながら作成します。属性キーは、 最大長+1 でスペース埋めされて、整形されます。 ・useCR=false の場合 ・属性の個数制限(CR_CNT)単位に、改行が行われます。 これは、属性が右に多く並びすぎるのを防ぎます。 ・属性の長さ制限(CR_LEN)単位で、改行が行われます。 これは、たとえ、属性の個数が少なくても、文字列として長い場合は、 改行させます。- パラメータ:
attTab
- Nodeの階層を表す文字列。- 戻り値:
- このオブジェクトの文字列表現
- 関連項目:
- 変更履歴:
- 5.6.1.2 (2013/02/22) 改行処理の修正。最後の属性処理の後にも改行を入れる。, 5.6.4.4 (2013/05/31) 改行処理の修正。attTabが、ゼロ文字列の場合の対応。
- このメソッドは、nullを返しません
-
toString
オブジェクトの文字列表現を返します。
-