|
|||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectshohaku.composer.Composer
XMLで定義された情報をオブジェクトにマッピングし生成されたオブジェクトを合成する機能を提供します。
このライブラリはXMLで定義された情報を shohaku.composer.CompositeRule
の指定するルールに基づき shohaku.composer.Node
のツリー構造に変換します。
値型の shohaku.composer.Node
は自身と内包する要素に基づきオブジェクトを生成します。
複数のノードを再起的に合成する事により、単純なデータ型の集合から複雑なデータ構造を生成します。
また一度定義されたノードは一定の依存関係を含むものの相対的に独立するため複数の文脈で再利用することができます。
Composer
のデフォルト実装には基本型と利用頻度が高いと思われるデータ型、および何でも生成可能な汎用型のノードが提供されています。
また複雑な構造を容易に生成するために反復処理や条件分岐を実現する制御インターフェースが提供されています。
デフォルトノード以外の独自のノードの追加やデフォルトノードとの交換、使用するノードの選択、制約の追加も容易に実現できます。
Composer
は汎用的なデータ構造を基に複雑なデータ構造を生成したい場合に有用に設計されています。
解決を求められている問題領域によっては他のAPIの使用を検討してください。
使用例として shohaku.configutils
パッケージを参照する事が出来ます。
コンストラクタの概要 | |
Composer()
デフォルトコンストラクタ。 |
メソッドの概要 | |
java.lang.ClassLoader |
getClassLoader()
解析処理に使用する ClassLoader を返します. |
CompositeContext |
getCompositeContext()
解析処理全体のコンテキスト情報を返します。 |
CompositeRule |
getCompositeRule()
解析中又は直前に使用した構成ルールを返します。 |
DocumentContext |
getDocumentContext()
解析中又は直前に解析したドキュメントのコンテキスト情報を返します。 |
org.xml.sax.DTDHandler |
getDTDHandler()
XMLリーダに登録される DTD イベントハンドラを返却します。 |
org.xml.sax.EntityResolver |
getEntityResolver()
XMLリーダに登録されるエンティティリゾルバを返却します。 |
org.xml.sax.ErrorHandler |
getErrorHandler()
XMLリーダに登録されるエラーイベントハンドラを返却します。 |
javax.xml.parsers.SAXParserFactory |
getFactory()
解析処理に使用する SAXParserFactory を返します。 |
boolean |
getFeature(java.lang.String name)
XMLReader の基本となる実装で要求された特定の機能の値を返します。 |
org.apache.commons.logging.Log |
getLogger()
解析処理プロセス内で使用するログを返却します。 |
javax.xml.parsers.SAXParser |
getParser()
解析処理に使用する SAXParser を返します。 |
java.lang.Object |
getProperty(java.lang.String name)
XMLReader の基本となる実装で要求された特定のプロパティを返します。 |
org.xml.sax.XMLReader |
getReader()
解析処理に使用する XMLReader を返します。 |
Node |
getRoot()
直前の解析処理のルートノードを返します。 |
org.xml.sax.XMLReader |
getXMLReader()
解析処理に使用する XMLReader を返します。 |
void |
initialize()
このオブジェクトを初期化します。 |
boolean |
isErrThrowable()
解析処理内でエラーが発生した場合に例外を発生させるかを示すフラグを返却します。 |
boolean |
isNamespaceAware()
ファクトリが名前空間を認識するパーサを作成するように設定されているかどうかを示します。 |
boolean |
isValidating()
構文解析時に XML コンテンツを検証するパーサを作成するようにファクトリが設定されているかどうかを示します。 |
void |
parse(CompositeRule rule,
org.xml.sax.InputSource input)
解析処理を実行します。 |
void |
parse(CompositeRule rule,
java.io.InputStream inStream)
解析処理を実行します。 |
void |
setClassLoader(java.lang.ClassLoader classLoader)
解析処理に使用する ClassLoader を設定します. |
void |
setDTDHandler(org.xml.sax.DTDHandler dtdHandler)
XMLリーダに DTD イベントハンドラの登録します。 |
void |
setEntityResolver(org.xml.sax.EntityResolver resolver)
XMLリーダにエンティティリゾルバの登録します。 |
void |
setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
XMLリーダにエラーイベントハンドラの登録します。 |
void |
setErrThrowable(boolean errThrowable)
解析処理内でエラーが発生した場合に例外を発生させるかを示すフラグを格納します。 |
void |
setFeature(java.lang.String name,
boolean value)
XMLReader の基本となる実装に特定の機能の値を設定します。 |
void |
setLogger(org.apache.commons.logging.Log log)
解析処理プロセス内で使用するログを格納します。 |
void |
setNamespaceAware(boolean namespaceAware)
ファクトリで作成されたパーサが XML 名前空間をサポートするように指定します。 |
void |
setProperty(java.lang.String name,
java.lang.Object value)
XMLReader の基本となる実装に特定のプロパティを設定します。 |
void |
setValidating(boolean validating)
構文解析時にドキュメントの妥当性を検証するように指定します。 |
クラス java.lang.Object から継承したメソッド |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
public Composer()
メソッドの詳細 |
public void initialize()
public void parse(CompositeRule rule, java.io.InputStream inStream)
rule
- 構成ルールinStream
- XMLデータ入力ストリーム
CompositeException
- 構成する情報に何らかの誤りが在る場合発生します。public void parse(CompositeRule rule, org.xml.sax.InputSource input)
rule
- 構成ルールinput
- XMLデータソース
CompositeException
- 構成する情報に何らかの誤りが在る場合発生します。public org.apache.commons.logging.Log getLogger()
public void setLogger(org.apache.commons.logging.Log log)
log
- ログpublic javax.xml.parsers.SAXParserFactory getFactory()
SAXParserFactory
を返します。 null
が返ります。
SAXParserFactory
public javax.xml.parsers.SAXParser getParser()
SAXParser
を返します。 null
が返ります。
public org.xml.sax.XMLReader getReader()
XMLReader
を返します。 null
が返ります。
XMLReader
public org.xml.sax.XMLReader getXMLReader() throws org.xml.sax.SAXException
XMLReader
を返します。 SAXException
が発生します。
XMLReader
org.xml.sax.SAXException
- リーダの生成に失敗した場合発生します。public java.lang.Object getProperty(java.lang.String name) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException
name
- 取り出されるプロパティの名前
org.xml.sax.SAXNotRecognizedException
- 基本となる XMLReader がプロパティ名を認識しない場合
org.xml.sax.SAXNotSupportedException
- 基本となる XMLReader はプロパティ名を認識するが、そのプロパティをサポートしない場合SAXParser.getProperty(java.lang.String)
public void setProperty(java.lang.String name, java.lang.Object value) throws org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException
name
- 設定されるプロパティの名前value
- 設定されるプロパティの値
org.xml.sax.SAXNotRecognizedException
- 基本となる XMLReader がプロパティ名を認識しない場合
org.xml.sax.SAXNotSupportedException
- 基本となる XMLReader はプロパティ名を認識するが、そのプロパティをサポートしない場合SAXParser.setProperty(java.lang.String, java.lang.Object)
public boolean getFeature(java.lang.String name) throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException
name
- 取り出される機能の名前
javax.xml.parsers.ParserConfigurationException
- 要求された構成を満たすパーサを生成できない場合
org.xml.sax.SAXNotRecognizedException
- 基本となる XMLReader が機能名を認識しない場合
org.xml.sax.SAXNotSupportedException
- 基本となる XMLReader は機能名を認識するが、その機能をサポートしない場合SAXParserFactory.getFeature(java.lang.String)
public void setFeature(java.lang.String name, boolean value) throws javax.xml.parsers.ParserConfigurationException, org.xml.sax.SAXNotRecognizedException, org.xml.sax.SAXNotSupportedException
name
- 設定される機能の名前value
- 設定される機能の値
javax.xml.parsers.ParserConfigurationException
- 要求された構成を満たすパーサを生成できない場合
org.xml.sax.SAXNotRecognizedException
- 基本となる XMLReader が機能名を認識しない場合
org.xml.sax.SAXNotSupportedException
- 基本となる XMLReader は機能名を認識するが、その機能をサポートしない場合SAXParserFactory.setFeature(java.lang.String, boolean)
public void setEntityResolver(org.xml.sax.EntityResolver resolver)
resolver
- エンティティリゾルバXMLReader.setEntityResolver(org.xml.sax.EntityResolver)
public org.xml.sax.EntityResolver getEntityResolver()
XMLReader.getEntityResolver()
public void setDTDHandler(org.xml.sax.DTDHandler dtdHandler)
dtdHandler
- DTD イベントハンドラXMLReader.setDTDHandler(org.xml.sax.DTDHandler)
public org.xml.sax.DTDHandler getDTDHandler()
XMLReader.getDTDHandler()
public void setErrorHandler(org.xml.sax.ErrorHandler errorHandler)
errorHandler
- エラーイベントハンドラXMLReader.setErrorHandler(org.xml.sax.ErrorHandler)
public org.xml.sax.ErrorHandler getErrorHandler()
XMLReader.getErrorHandler()
public boolean isValidating()
SAXParserFactory.isValidating()
public void setValidating(boolean validating)
validating
- 構文解析時にドキュメントの妥当性を検証する場合は true、そうでない場合は falseSAXParserFactory.setValidating(boolean)
public boolean isNamespaceAware()
SAXParserFactory.isNamespaceAware()
public void setNamespaceAware(boolean namespaceAware)
namespaceAware
- 構文解析時にドキュメントの妥当性を検証する場合は true、そうでない場合は falseSAXParserFactory.setNamespaceAware(boolean)
public java.lang.ClassLoader getClassLoader()
public void setClassLoader(java.lang.ClassLoader classLoader)
classLoader
- 解析処理に使用する ClassLoaderpublic boolean isErrThrowable()
true
の場合は解析処理内でエラーが発生した場合に例外を発生させるpublic void setErrThrowable(boolean errThrowable)
errThrowable
- true
の場合は解析処理内でエラーが発生した場合に例外を発生させるpublic CompositeContext getCompositeContext()
public DocumentContext getDocumentContext()
public CompositeRule getCompositeRule()
public Node getRoot()
|
|||||||||||
前のクラス 次のクラス | フレームあり フレームなし | ||||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |