jp.liq.container
クラス InjectableComponent<T>

java.lang.Object
  上位を拡張 jp.liq.container.InjectableComponent<T>
すべての実装されたインタフェース:
Component<T>
直系の既知のサブクラス:
ComponentMethodComponent, ConstructorComponent, ObjectMethodComponent

public abstract class InjectableComponent<T>
extends java.lang.Object
implements Component<T>

ロールと Injector を指定できる、 Component の実装です。

作成者:
nosen

コンストラクタの概要
InjectableComponent(java.lang.Class<T> type, java.util.List<Dependency<?>> deps)
          このクラスのインスタンスを構築します。
 
メソッドの概要
protected abstract  ObjectFactory<T> createObjectFactory(Resolver resolver)
          コンポーネントのインスタンスを生成する ObjectFactory を生成する。
protected  java.lang.Class<T> getComponentType()
           
 T getInstance(Resolver resolver)
          このコンポーネントのインスタンスを取得します。
 java.lang.Class<T> getType()
          このコンポーネントの実際の型に対応する Class を返します。
 InjectableComponent<T> injector(Injector<T> injector)
          このコンポーネントのInjectorを追加します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース jp.liq.container.Component から継承されたメソッド
getDescription, getRoles
 

コンストラクタの詳細

InjectableComponent

public InjectableComponent(java.lang.Class<T> type,
                           java.util.List<Dependency<?>> deps)
このクラスのインスタンスを構築します。

パラメータ:
type - コンポーネントの型
deps - コンポーネントの依存オブジェクトのメタデータ
メソッドの詳細

getType

public java.lang.Class<T> getType()
インタフェース Component の記述:
このコンポーネントの実際の型に対応する Class を返します。

定義:
インタフェース Component<T> 内の getType
戻り値:
関連項目:
Component.getType()

createObjectFactory

protected abstract ObjectFactory<T> createObjectFactory(Resolver resolver)
コンポーネントのインスタンスを生成する ObjectFactory を生成する。

パラメータ:
resolver - ObjectFactoryを生成するのに必要なコンポーネントをここから取得。
戻り値:
生成された ObjectFactory

getInstance

public final T getInstance(Resolver resolver)
インタフェース Component の記述:
このコンポーネントのインスタンスを取得します。 どのようなやり型でインスタンスを生成しようと、実装の自由です。

定義:
インタフェース Component<T> 内の getInstance
パラメータ:
resolver - ここからインスタンス生成に必要な他のコンポーネントを取得できる
戻り値:
コンポーネントのインスタンス。
関連項目:
Component.getInstance(jp.liq.container.Resolver)

injector

public final InjectableComponent<T> injector(Injector<T> injector)
このコンポーネントのInjectorを追加します。 ここで指定されたInjectorは、 コンポーネントの初期化時に追加された順番で適用されます。

パラメータ:
injector - 追加する Injector
戻り値:
このインスタンス自身。

getComponentType

protected final java.lang.Class<T> getComponentType()
戻り値:


Copyright © 2007 NTT DATA INTELLILINK CORPORATION. All Rights Reserved.