robbie.dao.x
クラス XDaoFactory

java.lang.Object
  拡張robbie.dao.x.XDaoFactory
すべての実装インタフェース:
java.io.Serializable

public class XDaoFactory
extends java.lang.Object
implements java.io.Serializable

XDAOFactoryクラス。

指定された制御ファイルに基づいて、DAOインスタンスを生成します。

作成者:
Tadahiro Murakami
関連項目:
直列化された形式

フィールドの概要
protected  java.util.Map daoNameMap
          DAOのクラス名を管理するMap
protected  java.util.Map daoResRefMap
          DAOと利用するDbResourceの関連を管理するMap
protected  XQueryFactory queryFactory
          XQueryFactoryのインスタンス
protected  XDbResourceFactory resourceFactory
          XDBResourceFactoryのインスタンス
protected  java.lang.String xDBResourceFactoryClassName
          XDbResourceFactoryのClass名
protected  XmlResource xmlResource
          制御XMLファイルを管理するクラス
protected  java.lang.String xQueryFactoryClassName
          XQueryFactoryのClass名
 
コンストラクタの概要
XDaoFactory(java.lang.String filename)
          クラスパスまたはファイル名から制御ファイルを読込み初期化をおこないます。
XDaoFactory(java.lang.String filename, boolean isValidate)
          クラスパスまたはファイル名から制御ファイルを読込み初期化をおこないます。
 
メソッドの概要
protected  void configure()
          全ての制御情報を更新します。
protected  void configureIfNeeded()
          全ての制御情報を更新します。
protected  void configureQueryFactory(org.jdom.Element root)
          XQueryFactoryクラスを作成します。
protected  void configureResourceFactory(org.jdom.Element root)
          XDbResourceFactoryクラスを作成します。
protected  void conifgureDAOMap(org.jdom.Element root)
          DAOのクラス名と対象リソース名のMapファイルをロードする。
 XDao createDaoInstance(java.lang.String id)
          DAOインスタンスを取得する。
 XDao createDaoInstance(java.lang.String id, java.lang.ClassLoader loader)
          DAOインスタンスを取得する。
 java.lang.String toString()
           
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

フィールドの詳細

xmlResource

protected XmlResource xmlResource
制御XMLファイルを管理するクラス


xQueryFactoryClassName

protected java.lang.String xQueryFactoryClassName
XQueryFactoryのClass名


xDBResourceFactoryClassName

protected java.lang.String xDBResourceFactoryClassName
XDbResourceFactoryのClass名


queryFactory

protected XQueryFactory queryFactory
XQueryFactoryのインスタンス


resourceFactory

protected XDbResourceFactory resourceFactory
XDBResourceFactoryのインスタンス


daoNameMap

protected java.util.Map daoNameMap
DAOのクラス名を管理するMap


daoResRefMap

protected java.util.Map daoResRefMap
DAOと利用するDbResourceの関連を管理するMap

コンストラクタの詳細

XDaoFactory

public XDaoFactory(java.lang.String filename,
                   boolean isValidate)
クラスパスまたはファイル名から制御ファイルを読込み初期化をおこないます。

引数のfilenameは、ファイル名だけでもファイルのPATHでも指定することが可能です。 ただし、ファイル名を指定する場合には、そのファイルがclasspath内に配置されている 必要があります。

また、JARファイル内で見つかった場合には、リロード処理は行いません。 通常のディレクトリ内で見つかった場合にはファイルスタンプを確認して リロード処理を行います。

パラメータ:
filename - 制御ファイル
isValidate - XMLのロード時に検証を行うか

XDaoFactory

public XDaoFactory(java.lang.String filename)
クラスパスまたはファイル名から制御ファイルを読込み初期化をおこないます。

パラメータ:
filename - 制御ファイル
メソッドの詳細

createDaoInstance

public XDao createDaoInstance(java.lang.String id,
                              java.lang.ClassLoader loader)
DAOインスタンスを取得する。

新規のDAOを作成するときは、その時の最新の制御XMLの内容が 反映される。

パラメータ:
id - DAOのID
loader - 作成するインスタンスを検索するClassLoader
戻り値:
xDAOインスタンス

createDaoInstance

public XDao createDaoInstance(java.lang.String id)
DAOインスタンスを取得する。

新規のDAOを作成するときは、その時の最新の制御XMLの内容が 反映される。

パラメータ:
id - DAOのID
戻り値:
xDAOインスタンス

toString

public java.lang.String toString()

configure

protected void configure()
全ての制御情報を更新します。

この処理は同期化されています。


configureIfNeeded

protected void configureIfNeeded()
全ての制御情報を更新します。

この処理は同期化されています。


configureResourceFactory

protected void configureResourceFactory(org.jdom.Element root)
XDbResourceFactoryクラスを作成します。

パラメータ:
root - 制御XMLのrootのElement

conifgureDAOMap

protected void conifgureDAOMap(org.jdom.Element root)
DAOのクラス名と対象リソース名のMapファイルをロードする。

パラメータ:
root - 制御XMLのrootのElement

configureQueryFactory

protected void configureQueryFactory(org.jdom.Element root)
XQueryFactoryクラスを作成します。

パラメータ:
root - 制御XMLのrootのElement