jp.liq.container.component
クラス InjectableComponent<T,C extends InjectableComponent<T,C>>

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

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

Injector を指定することができる、Component の抽象基底クラスです。

作成者:
nosen

コンストラクタの概要
InjectableComponent(java.lang.Class<T> type, java.lang.Class<?>[] deps)
          このクラスのインスタンスを構築します。
InjectableComponent(java.lang.Class<T> type, java.lang.Class<?>[] deps, boolean recycled)
          このクラスのインスタンスを構築します。
 
メソッドの概要
protected abstract  ObjectFactory<T> createObjectFactory(Resolver resolver)
          コンポーネントのインスタンスを生成する ObjectFactory を生成します。
 T getInstance(Resolver resolver)
          Component.getType()が返却するクラスのインスタンスを生成し、返却します。
abstract  C getThis()
          自分自身のインスタンスを返却します。
 java.lang.Class<T> getType()
          このコンポーネントのクラスを返します。
 C with(Injector injector)
          このコンポーネントのInjectorを追加します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
インタフェース jp.liq.container.Component から継承されたメソッド
getDescription
 

コンストラクタの詳細

InjectableComponent

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

パラメータ:
type - コンポーネントの型
deps - コンポーネントのインスタンス生成時に必要となるクラス

InjectableComponent

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

パラメータ:
type - コンポーネントの型
deps - コンポーネントのインスタンス生成時に必要となるクラス
recycled - コンポーネントのインスタンスを再利用する
メソッドの詳細

getThis

public abstract C getThis()
自分自身のインスタンスを返却します。

戻り値:
this

createObjectFactory

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

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

getInstance

public final T getInstance(Resolver resolver)
インタフェース Component の記述:
Component.getType()が返却するクラスのインスタンスを生成し、返却します。

定義:
インタフェース Component<T> 内の getInstance
パラメータ:
resolver - このメソッドの実装は、 このオブジェクトからインスタンス生成に必要な他のクラスのインスタンスを取得できます
戻り値:
Component.getType()が返却するクラスのインスタンス。
関連項目:
Component.getInstance(jp.liq.container.Resolver)

with

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

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

getType

public java.lang.Class<T> getType()
このコンポーネントのクラスを返します。

定義:
インタフェース Component<T> 内の getType


Copyright © 2008. All Rights Reserved.