パッケージ org.opengion.fukurou.xml
クラス OGElement
java.lang.Object
org.opengion.fukurou.xml.OGNode
org.opengion.fukurou.xml.OGElement
エレメントをあらわす、OGElement クラスを定義します。
エレメントは、OGNode クラスを継承し、名称、属性、ノードリストを持つオブジェクトです。
通常で言うところの、タグになります。
属性は、OGAttributes クラスで管理します。ノードリスト に関する操作は、OGNodeクラスの実装です。
OGNode は、enum OGNodeType で区別される状態を持っています。
OGNodeType は、それぞれ、再設定が可能です。
例えば、既存のエレメントやノードに対して、コメントタイプ(Comment)を指定すると、
ファイル等への出力時にコメントとして出力されます。
- 変更履歴:
- 5.1.8.0 (2010/07/01) 新規作成
- 導入されたバージョン:
- JDK6.0,
-
フィールドの概要
クラスから継承されたフィールド org.opengion.fukurou.xml.OGNode
BUFFER_MIDDLE, CR
-
コンストラクタの概要
コンストラクタコンストラクタ説明ノード名を指定してのトコンストラクター ノード名のみ指定するため、属性と、ノードリストが空のエレメントを構築します。OGElement
(String qName, Attributes atts) ノード名、属性タブ、属性リストを指定してのトコンストラクター 注意 属性値の正規化は必ず行われます。 -
メソッドの概要
修飾子とタイプメソッド説明void
属性リストに、属性(キー、値のセット)を設定します。getId()
属性リストから、id属性の、属性値を取得します。属性オブジェクトを返します。ノード名を返します。getText
(int cnt) オブジェクトの文字列表現を返します。属性リストから、指定の属性キーの、属性値を取得します。boolean
自分自身の状態が、指定の条件に合致しているかどうか、判定します。void
setOGAttributes
(OGAttributes attri) 属性オブジェクトをセットします。クラスから継承されたメソッド org.opengion.fukurou.xml.OGNode
addNode, addNode, changeNode, clearNode, getChildElementList, getElementList, getNode, getNodeType, getParentCount, getParentNode, nodeSize, removeNode, setNode, setNodeType, toString
-
コンストラクタの詳細
-
OGElement
ノード名を指定してのトコンストラクター ノード名のみ指定するため、属性と、ノードリストが空のエレメントを構築します。- パラメータ:
qName
- ノード名
-
OGElement
ノード名、属性タブ、属性リストを指定してのトコンストラクター 注意 属性値の正規化は必ず行われます。 属性値に含まれるCR(復帰), LF(改行), TAB(タブ)は、半角スペースに置き換えられます。 XMLの規定では、属性の並び順は保障されませんが、SAXのAttributesは、XMLに記述された順番で 取得できていますので、このクラスでの属性リストも、記述順での並び順になります。- パラメータ:
qName
- ノード名atts
- 属性リスト- 変更履歴:
- 5.2.1.0 (2010/10/01) タグ属性の改行処理を、Set からString[] に変更。, 5.6.1.2 (2013/02/22) CR_SET を配列から文字列に変更, 8.5.3.2 (2023/10/13) JDK21対応。警告: [this-escape] サブクラスが初期化される前の'this'エスケープの可能性があります
-
-
メソッドの詳細
-
getTagName
ノード名を返します。- 戻り値:
- ノード名
-
getOGAttributes
属性オブジェクトを返します。 これは、org.xml.sax.Attributes ではなく、OGAttributes オブジェクトを返します。 内部オブジェクトそのものを返しますので、この OGAttributes の変更は、この エレメントが持つ内部属性も変更されます。- 戻り値:
- 属性オブジェクト
-
setOGAttributes
属性オブジェクトをセットします。 属性オブジェクトのセットは、このメソッドからのみできるようにします。 内部オブジェクトそのものにセットしますので、異なる OGAttributes をセットしたい場合は、 外部で、コピーしてからセットしてください。- パラメータ:
attri
- 属性オブジェクト(org.opengion.fukurou.xml.OGAttributes)- 変更履歴:
- 5.6.1.2 (2013/02/22) 新規追加
-
getId
属性リストから、id属性の、属性値を取得します。 id属性 は、内部的にキャッシュしており、すぐに取り出せます。 タグを特定する場合、一般属性のキーと値で選別するのではなく、 id属性を付与して選別するようにすれば、高速に見つけることが可能になります。- 戻り値:
- id属性値
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
getVal
属性リストから、指定の属性キーの、属性値を取得します。 この処理は、属性リストをすべてスキャンして、キーにマッチする 属性オブジェクトを見つけ、そこから、属性値を取り出すので、 パフォーマンスに問題があります。 基本的には、アドレス指定で、属性値を取り出すようにしてください。- パラメータ:
key
- 属性キー- 戻り値:
- 属性値
- 変更履歴:
- 5.6.1.2 (2013/02/22) 新規追加
-
addAttr
属性リストに、属性(キー、値のセット)を設定します。 属性リストの一番最後に、属性(キー、値のセット)を設定します。- パラメータ:
key
- 属性リストのキーval
- 属性リストの値
-
match
自分自身の状態が、指定の条件に合致しているかどうか、判定します。 合致している場合は、true を、合致していない場合は、false を返します。 指定の属性が null の場合は、すべてに合致すると判断します。 例えば、kye のみ指定すると、その属性名を持っているエレメントすべてで true が返されます。 実行速度を考えると、ノード名は指定すべきです。- パラメータ:
name
- ノード名 null の場合は、すべての ノード名 に合致key
- 属性名 null の場合は、すべての 属性名 に合致val
- 属性値 null の場合は、すべての 属性値 に合致- 戻り値:
- 条件がこのエレメントに合致した場合 true
-
getText
オブジェクトの文字列表現を返します。 文字列は、OGNodeType により異なります。 Comment ノードの場合は、コメント記号を、Cdata ノードの場合は、CDATA を つけて出力します。
-