org.seasar.framework.container.factory
クラス S2ContainerFactory.DefaultProvider

java.lang.Object
  拡張org.seasar.framework.container.factory.S2ContainerFactory.DefaultProvider
すべての実装インタフェース:
S2ContainerFactory.Provider
直系の既知のサブクラス:
S2ContainerFactoryCoolProvider
含まれているクラス:
S2ContainerFactory

public static class S2ContainerFactory.DefaultProvider
extends Object
implements S2ContainerFactory.Provider

S2コンテナファクトリの振る舞いを提供する、 デフォルトの実装クラスです。

このクラスでは、 以下の手順に従ってS2コンテナを構築します。

  1. 設定ファイルの拡張子を取り出す。
  2. 拡張子と同じ名前を持つS2コンテナビルダをコンフィグレーションS2コンテナから取得する。
  3. 取得できた場合は、 そのS2コンテナビルダを使ってS2コンテナを構築する。
  4. 取得できなかった場合は、 デフォルトのS2コンテナビルダを使ってS2コンテナを構築する。

デフォルトのS2コンテナビルダとして、 defaultBuilderという名前でコンフィグレーションS2コンテナに登録されたコンポーネントを使用します。

S2コンテナを構築した後、 外部コンテキストおよび外部コンテキスト用コンポーネント定義を登録するオブジェクトをコンテナへ登録します。

作成者:
jundu

フィールドの概要
protected  ExternalContext externalContext
          外部コンテキストです。
static String externalContext_BINDING
          プロパティexternalContextのための定数アノテーションです。
protected  ExternalContextComponentDefRegister externalContextComponentDefRegister
          外部コンテキスト用コンポーネント定義を登録するオブジェクトです。
static String externalContextComponentDefRegister_BINDING
          プロパティexternalContextComponentDefRegisterのための定数アノテーションです。
protected  PathResolver pathResolver
          パス名から物理(リアル)パスを取得するためのパスリゾルバです。
static String pathResolver_BINDING
          プロパティpathResolverのための定数アノテーションです。
 
コンストラクタの概要
S2ContainerFactory.DefaultProvider()
           
 
メソッドの概要
protected  S2Container build(String path, ClassLoader classLoader)
          S2コンテナを構築して返します。
 S2Container create(String path)
          指定された設定ファイルに基づき、 S2コンテナを構築して返します。
 S2Container create(String path, ClassLoader classLoader)
          指定された設定ファイルに基づき、 指定されたクラスローダを使用してS2コンテナを構築して返します。
protected  S2ContainerBuilder getBuilder(String ext)
          指定された拡張子に対応するS2コンテナビルダを返します。
protected  String getExtension(String path)
          指定されたパスから、 ファイル名の拡張子部分を取り出して返します。
 ExternalContext getExternalContext()
          外部コンテキストを返します。
 ExternalContextComponentDefRegister getExternalContextComponentDefRegister()
          外部コンテキスト用コンポーネント定義を登録するためのオブジェクトを返します。
 PathResolver getPathResolver()
          パス名から物理(リアル)パスを取得するためのパスリゾルバを返します。
 S2Container include(S2Container parent, String path)
          指定された設定ファイルからS2コンテナを構築し、 親S2コンテナに対してインクルードします。
 void setExternalContext(ExternalContext externalContext)
          外部コンテキストを設定します。
 void setExternalContextComponentDefRegister(ExternalContextComponentDefRegister externalContextComponentDefRegister)
          外部コンテキスト用コンポーネント定義を登録するためのオブジェクトを設定します。
 void setPathResolver(PathResolver pathResolver)
          パス名から物理(リアル)パスを取得するためのパスリゾルバを設定します。
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

pathResolver_BINDING

public static final String pathResolver_BINDING
プロパティpathResolverのための定数アノテーションです。

関連項目:
定数フィールド値

externalContext_BINDING

public static final String externalContext_BINDING
プロパティexternalContextのための定数アノテーションです。

関連項目:
定数フィールド値

externalContextComponentDefRegister_BINDING

public static final String externalContextComponentDefRegister_BINDING
プロパティexternalContextComponentDefRegisterのための定数アノテーションです。

関連項目:
定数フィールド値

pathResolver

protected PathResolver pathResolver
パス名から物理(リアル)パスを取得するためのパスリゾルバです。


externalContext

protected ExternalContext externalContext
外部コンテキストです。


externalContextComponentDefRegister

protected ExternalContextComponentDefRegister externalContextComponentDefRegister
外部コンテキスト用コンポーネント定義を登録するオブジェクトです。

コンストラクタの詳細

S2ContainerFactory.DefaultProvider

public S2ContainerFactory.DefaultProvider()
メソッドの詳細

getPathResolver

public PathResolver getPathResolver()
パス名から物理(リアル)パスを取得するためのパスリゾルバを返します。

戻り値:
パスリゾルバ

setPathResolver

public void setPathResolver(PathResolver pathResolver)
パス名から物理(リアル)パスを取得するためのパスリゾルバを設定します。

パラメータ:
pathResolver - パスリゾルバ

getExternalContext

public ExternalContext getExternalContext()
外部コンテキストを返します。

戻り値:
外部コンテキスト

setExternalContext

public void setExternalContext(ExternalContext externalContext)
外部コンテキストを設定します。

パラメータ:
externalContext - 外部コンテキスト

getExternalContextComponentDefRegister

public ExternalContextComponentDefRegister getExternalContextComponentDefRegister()
外部コンテキスト用コンポーネント定義を登録するためのオブジェクトを返します。

戻り値:
外部コンテキスト用コンポーネント定義を登録するためのオブジェクト

setExternalContextComponentDefRegister

public void setExternalContextComponentDefRegister(ExternalContextComponentDefRegister externalContextComponentDefRegister)
外部コンテキスト用コンポーネント定義を登録するためのオブジェクトを設定します。

パラメータ:
externalContextComponentDefRegister - 外部コンテキスト用コンポーネント定義を登録するためのオブジェクト

create

public S2Container create(String path)
インタフェース S2ContainerFactory.Provider の記述:
指定された設定ファイルに基づき、 S2コンテナを構築して返します。

S2コンテナの構築には、 スレッドのコンテキストクラスローダを使用します。

定義:
インタフェース S2ContainerFactory.Provider 内の create
パラメータ:
path - 設定ファイルのパス
戻り値:
構築したS2コンテナ

create

public S2Container create(String path,
                          ClassLoader classLoader)
インタフェース S2ContainerFactory.Provider の記述:
指定された設定ファイルに基づき、 指定されたクラスローダを使用してS2コンテナを構築して返します。

定義:
インタフェース S2ContainerFactory.Provider 内の create
パラメータ:
path - 設定ファイルのパス
classLoader - S2コンテナの構築に使用するクラスローダ
戻り値:
構築したS2コンテナ

include

public S2Container include(S2Container parent,
                           String path)
インタフェース S2ContainerFactory.Provider の記述:
指定された設定ファイルからS2コンテナを構築し、 親S2コンテナに対してインクルードします。

定義:
インタフェース S2ContainerFactory.Provider 内の include
パラメータ:
parent - 親となるS2コンテナ
path - 設定ファイルのパス
戻り値:
構築したS2コンテナ

build

protected S2Container build(String path,
                            ClassLoader classLoader)
S2コンテナを構築して返します。

指定されたクラスローダを使用してS2コンテナを構築し、 外部コンテキストおよび外部コンテキスト用コンポーネント定義を登録するオブジェクトを設定して返します。

パラメータ:
path - 設定ファイルのパス
classLoader - S2コンテナの構築に使用するクラスローダ
戻り値:
構築したS2コンテナ

getExtension

protected String getExtension(String path)
指定されたパスから、 ファイル名の拡張子部分を取り出して返します。

パラメータ:
path - 対象のファイルパス
戻り値:
取り出した拡張子

getBuilder

protected S2ContainerBuilder getBuilder(String ext)
指定された拡張子に対応するS2コンテナビルダを返します。

コンフィグレーションS2コンテナから、 拡張子と同じ名前を持つコンポーネントを取得します。 取得できなかった場合は、 デフォルトのS2コンテナビルダを返します。

パラメータ:
ext - 対象の拡張子
戻り値:
拡張子に対応するS2コンテナビルダ


Copyright © 2004-2007 The Seasar Foundation. All Rights Reserved.