パッケージ org.opengion.fukurou.xml
クラス OGElement
- java.lang.Object
-
- org.opengion.fukurou.xml.OGNode
-
- org.opengion.fukurou.xml.OGElement
-
public class OGElement extends OGNode
エレメントをあらわす、OGElement クラスを定義します。 エレメントは、OGNode クラスを継承し、名称、属性、ノードリストを持つオブジェクトです。 通常で言うところの、タグになります。 属性は、OGAttributes クラスで管理します。ノードリスト に関する操作は、OGNodeクラスの実装です。 OGNode は、enum OGNodeType で区別される状態を持っています。 OGNodeType は、それぞれ、再設定が可能です。 例えば、既存のエレメントやノードに対して、コメントタイプ(Comment)を指定すると、 ファイル等への出力時にコメントとして出力されます。- 変更履歴:
- 5.1.8.0 (2010/07/01) 新規作成
- バージョン
- 5.0
- 作成者
- Kazuhiko Hasegawa
- 導入されたバージョン:
- JDK6.0,
-
-
フィールドの概要
-
クラスから継承されたフィールド org.opengion.fukurou.xml.OGNode
BUFFER_MIDDLE, CR
-
-
メソッドの概要
すべてのメソッド インスタンス・メソッド concreteメソッド 修飾子とタイプ メソッド 説明 void
addAttr(java.lang.String key, java.lang.String val)
属性リストに、属性(キー、値のセット)を設定します。java.lang.String
getId()
属性リストから、id属性の、属性値を取得します。OGAttributes
getOGAttributes()
属性オブジェクトを返します。java.lang.String
getTagName()
ノード名を返します。java.lang.String
getText(int cnt)
オブジェクトの文字列表現を返します。java.lang.String
getVal(java.lang.String key)
属性リストから、指定の属性キーの、属性値を取得します。boolean
match(java.lang.String name, java.lang.String key, java.lang.String val)
自分自身の状態が、指定の条件に合致しているかどうか、判定します。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
public OGElement(java.lang.String qName)
ノード名を指定してのトコンストラクター ノード名のみ指定するため、属性と、ノードリストが空のエレメントを構築します。- パラメータ:
qName
- ノード名
-
OGElement
public OGElement(java.lang.String qName, org.xml.sax.Attributes atts)
ノード名、属性タブ、属性リストを指定してのトコンストラクター 注意 属性値の正規化は必ず行われます。 属性値に含まれる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 を配列から文字列に変更
-
-
メソッドの詳細
-
getTagName
public java.lang.String getTagName()
ノード名を返します。- 戻り値:
- ノード名
-
getOGAttributes
public OGAttributes getOGAttributes()
属性オブジェクトを返します。 これは、org.xml.sax.Attributes ではなく、OGAttributes オブジェクトを返します。 内部オブジェクトそのものを返しますので、この OGAttributes の変更は、この エレメントが持つ内部属性も変更されます。- 戻り値:
- 属性オブジェクト
-
setOGAttributes
public void setOGAttributes(OGAttributes attri)
属性オブジェクトをセットします。 属性オブジェクトのセットは、このメソッドからのみできるようにします。 内部オブジェクトそのものにセットしますので、異なる OGAttributes をセットしたい場合は、 外部で、コピーしてからセットしてください。- パラメータ:
attri
- 属性オブジェクト(org.opengion.fukurou.xml.OGAttributes)- 変更履歴:
- 5.6.1.2 (2013/02/22) 新規追加
-
getId
public java.lang.String getId()
属性リストから、id属性の、属性値を取得します。 id属性 は、内部的にキャッシュしており、すぐに取り出せます。 タグを特定する場合、一般属性のキーと値で選別するのではなく、 id属性を付与して選別するようにすれば、高速に見つけることが可能になります。- 戻り値:
- id属性値
- 変更履歴:
- 5.1.9.0 (2010/08/01) 新規追加
-
getVal
public java.lang.String getVal(java.lang.String key)
属性リストから、指定の属性キーの、属性値を取得します。 この処理は、属性リストをすべてスキャンして、キーにマッチする 属性オブジェクトを見つけ、そこから、属性値を取り出すので、 パフォーマンスに問題があります。 基本的には、アドレス指定で、属性値を取り出すようにしてください。- パラメータ:
key
- 属性キー- 戻り値:
- 属性値
- 変更履歴:
- 5.6.1.2 (2013/02/22) 新規追加
-
addAttr
public void addAttr(java.lang.String key, java.lang.String val)
属性リストに、属性(キー、値のセット)を設定します。 属性リストの一番最後に、属性(キー、値のセット)を設定します。- パラメータ:
key
- 属性リストのキーval
- 属性リストの値
-
match
public boolean match(java.lang.String name, java.lang.String key, java.lang.String val)
自分自身の状態が、指定の条件に合致しているかどうか、判定します。 合致している場合は、true を、合致していない場合は、false を返します。 指定の属性が null の場合は、すべてに合致すると判断します。 例えば、kye のみ指定すると、その属性名を持っているエレメントすべてで true が返されます。 実行速度を考えると、ノード名は指定すべきです。- パラメータ:
name
- ノード名 null の場合は、すべての ノード名 に合致key
- 属性名 null の場合は、すべての 属性名 に合致val
- 属性値 null の場合は、すべての 属性値 に合致- 戻り値:
- 条件がこのエレメントに合致した場合 true
-
getText
public java.lang.String getText(int cnt)
オブジェクトの文字列表現を返します。 文字列は、OGNodeType により異なります。 Comment ノードの場合は、コメント記号を、Cdata ノードの場合は、CDATA を つけて出力します。- オーバーライド:
getText
クラス内OGNode
- パラメータ:
cnt
- Nodeの階層(-1:なし、0:改行のみ、1:改行+" "・・・・)- 戻り値:
- このオブジェクトの文字列表現
- 関連項目:
OGNode.toString()
- 変更履歴:
- 5.6.1.2 (2013/02/22) 内部テキストがない場合のタグの終了時にスペースは入れない。, 5.6.4.4 (2013/05/31) 改行3つを改行2つに置換します。
- このメソッドは、nullを返しません
-
-