shohaku.shoin.factory
クラス OgdlProperties

java.lang.Object
  拡張shohaku.shoin.factory.AbstractResourceSetFactory
      拡張shohaku.shoin.factory.AbstractIOResourceSetFactory
          拡張shohaku.shoin.factory.OgdlProperties
すべての実装インタフェース:
IOResourceSetFactory, ResourceKeyPrefixSupport, ResourceSetFactory

public class OgdlProperties
extends AbstractIOResourceSetFactory
implements ResourceKeyPrefixSupport

プロパティ値を OGDL式として認識するプロパティセットを格納するファクトリを提供します。

例:

 # @ で始まると処理の宣言と見なされます。
 @import=java.sql.Time   //クラスをOGDLにインポートします。
 
 # $ で始まると、OGDL変数の宣言と為ります。
 $sunday="日曜"   //sundayが変数名、値をOGDL式として評価
 
 #コメント
 season.map={ 1="春", 2="夏", 3="秋", 4="冬" } //プロパティを定義します。キーは文字列、値をOGDL式として評価
 
コメントや区切り文字等の仕様は java.util.Properties と同等です。
OGDLの構文に関しては、以下の OGDL リファレンス を参照してください。

 一般的なファイルの読み取りとコンポーネント取得の手順は以下の様に為ります。 
 OgdlProperties factory = new OgdlProperties();
 IOResource inres = FeatureFactory.getLoader().getIOResource("ognl.properties");
 factory.setIOResources(new IOResource[] { inres });
 
 ResourceSet resources = factory.getResourceSet();

 Map m = (Map) resources.getObject("season.map");
 System.out.println("季節名のマッピング=" + m.toString());

 >>季節名のマッピング={1=春,2=夏,3=秋,4=冬}
 


コンストラクタの概要
OgdlProperties()
          プロパティを初期値で初期化します。
 
メソッドの概要
protected  java.lang.ClassLoader findClassLoader()
          使用するクラスローダを検索して返却します。
 java.lang.ClassLoader getClassLoader()
          リソースの生成に使用するクラスローダを返却します。
 java.lang.String getPrefix()
          全てのリソースに対する接頭辞を返却します。
 ResourceSet getResourceSet()
          IOリソースから、リソース集合を生成し返却します。
 java.lang.String[] getSourcesPrefix()
          リソース単位での接頭辞の配列を返却します。
protected  void load(java.util.Map lookup, shohaku.ogdl.OgdlContext context, java.lang.ClassLoader loader, shohaku.core.resource.IOResource[] inreses)
          IOリソースからリソースを読み込みます。
protected  void load(java.util.Map lookup, shohaku.ogdl.OgdlContext context, java.lang.ClassLoader loader, shohaku.core.resource.IOResource inres, int index)
          IOリソースからリソースを読み込みます。
protected  java.util.Map newResourceSetMap()
          リソース集合を格納するマップを生成して返却します。
protected  ResourceSet newResourceSetObject(java.util.Map lookup)
          マップからリソース集合を生成して返却します。
 void setClassLoader(java.lang.ClassLoader classLoader)
          リソースの生成に使用するクラスローダを格納します。
 void setPrefix(java.lang.String prefix)
          全てのリソースに対する接頭辞を格納します。
 void setSourcesPrefix(java.lang.String[] prefixs)
          リソース単位での接頭辞の配列を格納します。
 
クラス shohaku.shoin.factory.AbstractIOResourceSetFactory から継承したメソッド
getIOResources, setIOResources
 
クラス java.lang.Object から継承したメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

コンストラクタの詳細

OgdlProperties

public OgdlProperties()
プロパティを初期値で初期化します。

メソッドの詳細

getResourceSet

public ResourceSet getResourceSet()
                           throws ResourceSetCreationException
IOリソースから、リソース集合を生成し返却します。
IOリソースが設定されていない場合は、生成を行わずにリソース集合を返却します。
入力ストリームからキーと要素が対になったプロパティセットを読み込みます。
ストリームは ISO 8859-1 文字エンコーディングを使用しているとみなされます。
このエンコーディングに直接表示できない文字には Unicode escapes が使用されます。
ただし、エスケープシーケンスでは 1 文字の「u」だけが使用可能です。
他の文字エンコーディングとプロパティファイルを変換する場合 native2ascii ツールを使用できます。

定義:
インタフェース IOResourceSetFactory 内の getResourceSet
戻り値:
リソース集合
例外:
ResourceSetCreationException - リソース集合の生成に失敗した場合

getClassLoader

public java.lang.ClassLoader getClassLoader()
リソースの生成に使用するクラスローダを返却します。

戻り値:
クラスローダ

setClassLoader

public void setClassLoader(java.lang.ClassLoader classLoader)
リソースの生成に使用するクラスローダを格納します。

パラメータ:
classLoader - クラスローダ

findClassLoader

protected java.lang.ClassLoader findClassLoader()
使用するクラスローダを検索して返却します。

戻り値:
クラスローダ

newResourceSetMap

protected java.util.Map newResourceSetMap()
リソース集合を格納するマップを生成して返却します。拡張ポイントです。

戻り値:
リソース集合を格納するマップ

newResourceSetObject

protected ResourceSet newResourceSetObject(java.util.Map lookup)
マップからリソース集合を生成して返却します。拡張ポイントです。

パラメータ:
lookup - リソースを格納するマップ
戻り値:
リソース集合

load

protected void load(java.util.Map lookup,
                    shohaku.ogdl.OgdlContext context,
                    java.lang.ClassLoader loader,
                    shohaku.core.resource.IOResource[] inreses)
             throws ResourceSetCreationException
IOリソースからリソースを読み込みます。

パラメータ:
lookup - リソースを格納するマップ
loader - クラスローダ
context - 式コンテキスト
inreses - IOリソースの配列
例外:
ResourceSetCreationException - リソース集合の生成に失敗した場合

load

protected void load(java.util.Map lookup,
                    shohaku.ogdl.OgdlContext context,
                    java.lang.ClassLoader loader,
                    shohaku.core.resource.IOResource inres,
                    int index)
             throws ResourceSetCreationException
IOリソースからリソースを読み込みます。

パラメータ:
lookup - リソースを格納するマップ
loader - クラスローダ
context - 式コンテキスト
inres - IOリソース
index - IOリソースのインデックス
例外:
ResourceSetCreationException - リソース集合の生成に失敗した場合

getPrefix

public java.lang.String getPrefix()
インタフェース ResourceKeyPrefixSupport の記述:
全てのリソースに対する接頭辞を返却します。

定義:
インタフェース ResourceKeyPrefixSupport 内の getPrefix
戻り値:
全てのリソースに対する接頭辞

setPrefix

public void setPrefix(java.lang.String prefix)
インタフェース ResourceKeyPrefixSupport の記述:
全てのリソースに対する接頭辞を格納します。

定義:
インタフェース ResourceKeyPrefixSupport 内の setPrefix
パラメータ:
prefix - 全てのリソースに対する接頭辞

getSourcesPrefix

public java.lang.String[] getSourcesPrefix()
インタフェース ResourceKeyPrefixSupport の記述:
リソース単位での接頭辞の配列を返却します。

定義:
インタフェース ResourceKeyPrefixSupport 内の getSourcesPrefix
戻り値:
リソース単位での接頭辞の配列

setSourcesPrefix

public void setSourcesPrefix(java.lang.String[] prefixs)
インタフェース ResourceKeyPrefixSupport の記述:
リソース単位での接頭辞の配列を格納します。

定義:
インタフェース ResourceKeyPrefixSupport 内の setSourcesPrefix
パラメータ:
prefixs - リソース単位での接頭辞の配列