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 java.lang.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 java.lang.String externalContext_BINDING
          プロパティexternalContextのための定数アノテーションです。
protected  ExternalContextComponentDefRegister externalContextComponentDefRegister
          外部コンテキストコンポーネント定義レジスタです。
static java.lang.String externalContextComponentDefRegister_BINDING
          プロパティexternalContextComponentDefRegisterのための定数アノテーションです。
protected  PathResolver pathResolver
          論理パスから物理(リアル)パスを取得するためのパスリゾルバです。
static java.lang.String pathResolver_BINDING
          プロパティpathResolverのための定数アノテーションです。
 
コンストラクタの概要
S2ContainerFactory.DefaultProvider()
           
 
メソッドの概要
protected  S2Container build(java.lang.String path, java.lang.ClassLoader classLoader)
          S2コンテナを構築して返します。
 S2Container create()
          設定ファイルを使用せず、 空のS2コンテナを構築して返します。
 S2Container create(java.lang.String path)
          指定された設定ファイルに基づき、 S2コンテナを構築して返します。
 S2Container create(java.lang.String path, java.lang.ClassLoader classLoader)
          指定された設定ファイルに基づき、 指定されたクラスローダを使用してS2コンテナを構築して返します。
protected  S2ContainerBuilder getBuilder(java.lang.String ext)
          指定された拡張子に対応するS2コンテナビルダを返します。
protected  java.lang.String getExtension(java.lang.String path)
          指定されたパスから、 ファイル名の拡張子部分を取り出して返します。
 ExternalContext getExternalContext()
          外部コンテキストを返します。
 ExternalContextComponentDefRegister getExternalContextComponentDefRegister()
          外部コンテキストコンポーネント定義レジスタを返します。
 PathResolver getPathResolver()
          論理パスから物理(リアル)パスを取得するためのパスリゾルバを返します。
 S2Container include(S2Container parent, java.lang.String path)
          指定された設定ファイルからS2コンテナを構築し、 親S2コンテナに対してインクルードします。
protected  void putCreationEndLog(java.lang.String path, java.lang.String realPath)
          S2コンテナの作成終了を示すログを出力します。
protected  void putCreationStartLog(java.lang.String path, java.lang.String realPath)
          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 java.lang.String pathResolver_BINDING
プロパティpathResolverのための定数アノテーションです。

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

externalContext_BINDING

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

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

externalContextComponentDefRegister_BINDING

public static final java.lang.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(java.lang.String path)
インタフェース S2ContainerFactory.Provider の記述:
指定された設定ファイルに基づき、 S2コンテナを構築して返します。

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

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

create

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

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

create

public S2Container create()
インタフェース S2ContainerFactory.Provider の記述:
設定ファイルを使用せず、 空のS2コンテナを構築して返します。

定義:
インタフェース S2ContainerFactory.Provider 内の create
戻り値:
構築したS2コンテナ

include

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

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

build

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

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

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

getExtension

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

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

getBuilder

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

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

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

putCreationStartLog

protected void putCreationStartLog(java.lang.String path,
                                   java.lang.String realPath)
S2コンテナの作成開始を示すログを出力します。

パラメータ:
path - 設定ファイルの論理パス
realPath - 設定ファイルの物理パス

putCreationEndLog

protected void putCreationEndLog(java.lang.String path,
                                 java.lang.String realPath)
S2コンテナの作成終了を示すログを出力します。

パラメータ:
path - 設定ファイルの論理パス
realPath - 設定ファイルの物理パス


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