インターフェース ObjectProvider<T>
- 型パラメーター:
T
- オブジェクト型
- すべてのスーパーインターフェース:
IterableSE<T>
,ObjectFactory<T>
インジェクションポイント用に特別に設計された
ObjectFactory
のバリアントで、プログラムによるオプションと緩やかな一意でない処理を可能にします。5.1 以降、このインターフェースは Iterable
SE を継承し、Stream
SE サポートを提供します。for
ループで使用でき、Iterable.forEach(java.util.function.Consumer<? super T>)
SE 反復を提供し、コレクションスタイルの stream()
アクセスを可能にします。
- 導入:
- 4.3
- 作成者:
- Juergen Hoeller
- 関連事項:
メソッドのサマリー
修飾子と型メソッド説明このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。default T
getIfAvailable
(SupplierSE<T> defaultSupplier) このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。default T
getIfUnique
(SupplierSE<T> defaultSupplier) このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。default void
ifAvailable
(ConsumerSE<T> dependencyConsumer) このファクトリが管理するオブジェクトのインスタンス(使用可能な場合は共有または独立)を使用します。default void
ifUnique
(ConsumerSE<T> dependencyConsumer) 一意である場合、このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を使用します。default IteratorSE<T>
iterator()
特定の順序の保証なしで(ただし、通常は登録順で)、一致するすべてのオブジェクトインスタンスでIterator
SE を返します。ファクトリの共通の順序コンパレーターに従って事前に順序付けされた、一致するすべてのオブジェクトインスタンスのシーケンシャルStream
SE を返します。stream()
特定の順序を保証せずに、一致するすべてのオブジェクトインスタンスのシーケンシャルStream
SE を返します(ただし、通常は登録順です)。インターフェース java.lang.IterableSE から継承されたメソッド
forEachSE, spliterator
インターフェース org.springframework.beans.factory.ObjectFactory から継承されたメソッド
getObject
メソッドの詳細
getObject
このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。BeanFactory.getBean(String, Object...)
の行に沿って、明示的な構築引数を指定できます。- パラメーター:
args
- 対応するインスタンスを作成するときに使用する引数- 戻り値:
- Bean のインスタンス
- 例外:
BeansException
- 作成エラーの場合- 関連事項:
getIfAvailable
このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- 戻り値:
- Bean のインスタンス、または使用できない場合は
null
- 例外:
BeansException
- 作成エラーの場合- 関連事項:
getIfAvailable
このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- パラメーター:
defaultSupplier
- ファクトリに何も存在しない場合にデフォルトオブジェクトを提供するためのコールバック- 戻り値:
- Bean のインスタンス、またはそのような Bean が使用できない場合は指定されたデフォルトオブジェクト
- 例外:
BeansException
- 作成エラーの場合- 導入:
- 5.0
- 関連事項:
ifAvailable
このファクトリが管理するオブジェクトのインスタンス(使用可能な場合は共有または独立)を使用します。- パラメーター:
dependencyConsumer
- 可能な場合はターゲットオブジェクトを処理するためのコールバック (他に呼ばれない)- 例外:
BeansException
- 作成エラーの場合- 導入:
- 5.0
- 関連事項:
getIfUnique
このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- 戻り値:
- Bean のインスタンス、または
null
のインスタンスがない場合または一意でない場合 (つまり、プライマリとしてマークされていない複数の候補が見つかりました) - 例外:
BeansException
- 作成エラーの場合- 関連事項:
getIfUnique
このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。- パラメーター:
defaultSupplier
- ファクトリに一意の候補が存在しない場合にデフォルトオブジェクトを提供するためのコールバック- 戻り値:
- Bean のインスタンス、またはそのような Bean が使用できない場合、ファクトリで一意でない場合は、提供されたデフォルトオブジェクト (つまり、プライマリとしてマークされていない複数の候補が見つかりました)
- 例外:
BeansException
- 作成エラーの場合- 導入:
- 5.0
- 関連事項:
ifUnique
一意である場合、このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を使用します。- パラメーター:
dependencyConsumer
- 一意の場合、ターゲットオブジェクトを処理するためのコールバック (他に呼ばれない)- 例外:
BeansException
- 作成エラーの場合- 導入:
- 5.0
- 関連事項:
iterator
特定の順序の保証なしで(ただし、通常は登録順で)、一致するすべてのオブジェクトインスタンスでIterator
SE を返します。- 次で指定:
- インターフェース
IterableSE<T>
のiterator
- 導入:
- 5.1
- 関連事項:
stream
特定の順序を保証せずに、一致するすべてのオブジェクトインスタンスのシーケンシャルStream
SE を返します(ただし、通常は登録順です)。- 導入:
- 5.1
- 関連事項:
orderedStream
ファクトリの共通の順序コンパレーターに従って事前に順序付けされた、一致するすべてのオブジェクトインスタンスのシーケンシャルStream
SE を返します。標準の Spring アプリケーションコンテキストでは、これは
Ordered
の規則に従って順序付けされ、アノテーションベースの構成の場合は、Order
アノテーションも考慮されます。これは、リスト / 配列型の複数要素のインジェクションポイントに類似しています。- 導入:
- 5.1
- 関連事項: