public class FactoryGlobal<ABSTRACTCLASS,IDENTIFIER>
extends java.lang.Object
修飾子とタイプ | クラスと説明 |
---|---|
(package private) class |
FactoryGlobal.FactoryEntry
生成/削除インターフェース管理用クラス
|
static class |
FactoryGlobal.ReturnCode
リターンコード
|
修飾子とタイプ | フィールドと説明 |
---|---|
protected java.util.HashMap<IDENTIFIER,FactoryGlobal.FactoryEntry> |
m_creators
FactoryEntry のマップ
|
protected RtcDeleteFunc |
m_Delete
コンポーネント破棄インタフェース格納用変数
|
protected RtcNewFunc |
m_New
コンポーネント生成インタフェース格納用変数
|
protected NumberingPolicy |
m_policy
コンポーネント生成時のナンバーリング・ポリシ(命名ポリシー)管理用
クラス
|
修飾子 | コンストラクタと説明 |
---|---|
protected |
FactoryGlobal()
コンストラクタ
|
修飾子とタイプ | メソッドと説明 |
---|---|
FactoryGlobal.ReturnCode |
addFactory(IDENTIFIER id,
ObjectCreator creator,
ObjectDestructor destructor)
Factory をマップへ登録する。
|
java.util.ArrayList<ABSTRACTCLASS> |
createdObjects()
生成済みオブジェクトリストの取得
このファクトリで生成されたオブジェクトのリストを取得する。
|
ABSTRACTCLASS |
createObject(IDENTIFIER id)
オブジェクト生成。
|
FactoryGlobal.ReturnCode |
deleteObject(ABSTRACTCLASS obj)
オブジェクト削除。
|
FactoryGlobal.ReturnCode |
deleteObject(IDENTIFIER id,
ABSTRACTCLASS obj)
オブジェクト削除。
|
java.util.Set<IDENTIFIER> |
getIdentifiers()
マップの Identifiers を返す
|
boolean |
hasFactory(IDENTIFIER id)
Identifierがマップに存在するかチェックする。
|
static FactoryGlobal |
instance()
FactoryGlobalをインスタス化する。
|
static java.lang.Object |
instance(java.lang.String clazz)
FactoryGlobalをインスタス化する。
|
boolean |
isProducerOf(ABSTRACTCLASS obj)
オブジェクトがこのファクトリの生成物かどうか調べる
|
ObjectCreator |
objectToCreator(ABSTRACTCLASS obj)
オブジェクトのコンストラクタを取得する
{@.ja このファクトリで生成されたオブジェクトのコンストラクタを取得する。
|
ObjectDestructor |
objectToDestructor(ABSTRACTCLASS obj)
オブジェクトのデストラクタを取得する
{@.ja このファクトリで生成されたオブジェクトのデストラクタを取得する。
|
FactoryGlobal.ReturnCode |
objectToIdentifier(ABSTRACTCLASS obj,
IDENTIFIER id)
オブジェクトからクラス識別子(ID)を取得する
当該オブジェクトのクラス識別子(ID)を取得する。
|
FactoryGlobal.ReturnCode |
removeFactory(IDENTIFIER id)
マップからFactoryを削除する。
|
protected RtcNewFunc m_New
protected RtcDeleteFunc m_Delete
protected NumberingPolicy m_policy
protected java.util.HashMap<IDENTIFIER,FactoryGlobal.FactoryEntry> m_creators
public static FactoryGlobal instance()
public static java.lang.Object instance(java.lang.String clazz)
clazz
- class name
public boolean hasFactory(IDENTIFIER id)
id
- Identifier
public java.util.Set<IDENTIFIER> getIdentifiers()
public FactoryGlobal.ReturnCode addFactory(IDENTIFIER id, ObjectCreator creator, ObjectDestructor destructor)
id
- creator
- destructor
- public FactoryGlobal.ReturnCode removeFactory(IDENTIFIER id)
id
- 削除するIdentifier
public ABSTRACTCLASS createObject(IDENTIFIER id)
Identifierで指定されたFactoryでObjectを生成する。
id
- 生成するオブジェクトのIdentifier
public FactoryGlobal.ReturnCode deleteObject(IDENTIFIER id, ABSTRACTCLASS obj)
Identifierで指定されたFactoryでObjectを削除する。
id
- 削除するオブジェクトのIdentifier
obj
- 削除するオブジェクト
public FactoryGlobal.ReturnCode deleteObject(ABSTRACTCLASS obj)
obj
- 削除するオブジェクト
public java.util.ArrayList<ABSTRACTCLASS> createdObjects()
このファクトリで生成されたオブジェクトのリストを取得する。
public boolean isProducerOf(ABSTRACTCLASS obj)
obj
- 対象オブジェクト
public FactoryGlobal.ReturnCode objectToIdentifier(ABSTRACTCLASS obj, IDENTIFIER id)
当該オブジェクトのクラス識別子(ID)を取得する。
obj
- [in]
クラス識別子(ID)を取得したいオブジェクト
id
- [out]
クラス識別子(ID)
public ObjectCreator objectToCreator(ABSTRACTCLASS obj)
このファクトリで生成されたオブジェクトのコンストラクタを取得する。 obj はこのファクトリで生成されたものでなければならない。予め isProducerOf() 関数で当該オブジェクトがこのファクトリの生成物で あるかどうかをチェックしなければならない。
public ObjectDestructor objectToDestructor(ABSTRACTCLASS obj)
このファクトリで生成されたオブジェクトのデストラクタを取得する。 obj はこのファクトリで生成されたものでなければならない。予め isProducerOf() 関数で当該オブジェクトがこのファクトリの生成物で あるかどうかをチェックしなければならない。