インターフェース ObjectProvider<T>

型パラメーター:
T - オブジェクト型
すべてのスーパーインターフェース:
IterableSE<T>ObjectFactory<T>

public interface ObjectProvider<T> extends ObjectFactory<T>, IterableSE<T>
インジェクションポイント用に特別に設計された ObjectFactory のバリアントで、プログラムによるオプションと緩やかな一意でない処理を可能にします。

5.1 以降、このインターフェースは IterableSE を継承し、StreamSE サポートを提供します。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>
    特定の順序の保証なしで(ただし、通常は登録順で)、一致するすべてのオブジェクトインスタンスで IteratorSE を返します。
    default StreamSE<T>
    ファクトリの共通の順序コンパレーターに従って事前に順序付けされた、一致するすべてのオブジェクトインスタンスのシーケンシャル StreamSE を返します。
    default StreamSE<T>
    特定の順序を保証せずに、一致するすべてのオブジェクトインスタンスのシーケンシャル StreamSE を返します(ただし、通常は登録順です)。

    インターフェース java.lang.IterableSE から継承されたメソッド

    forEachSE, spliterator

    インターフェース org.springframework.beans.factory.ObjectFactory から継承されたメソッド

    getObject
  • メソッドの詳細

    • getObject

      T getObject(ObjectSE... args) throws BeansException
      このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。

      BeanFactory.getBean(String, Object...) の行に沿って、明示的な構築引数を指定できます。

      パラメーター:
      args - 対応するインスタンスを作成するときに使用する引数
      戻り値:
      Bean のインスタンス
      例外:
      BeansException - 作成エラーの場合
      関連事項:
    • getIfAvailable

      @Nullable T getIfAvailable() throws BeansException
      このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。
      戻り値:
      Bean のインスタンス、または使用できない場合は null 
      例外:
      BeansException - 作成エラーの場合
      関連事項:
    • getIfAvailable

      default T getIfAvailable(SupplierSE<T> defaultSupplier) throws BeansException
      このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。
      パラメーター:
      defaultSupplier - ファクトリに何も存在しない場合にデフォルトオブジェクトを提供するためのコールバック
      戻り値:
      Bean のインスタンス、またはそのような Bean が使用できない場合は指定されたデフォルトオブジェクト
      例外:
      BeansException - 作成エラーの場合
      導入:
      5.0
      関連事項:
    • ifAvailable

      default void ifAvailable(ConsumerSE<T> dependencyConsumer) throws BeansException
      このファクトリが管理するオブジェクトのインスタンス(使用可能な場合は共有または独立)を使用します。
      パラメーター:
      dependencyConsumer - 可能な場合はターゲットオブジェクトを処理するためのコールバック (他に呼ばれない)
      例外:
      BeansException - 作成エラーの場合
      導入:
      5.0
      関連事項:
    • getIfUnique

      @Nullable T getIfUnique() throws BeansException
      このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。
      戻り値:
      Bean のインスタンス、または null のインスタンスがない場合または一意でない場合 (つまり、プライマリとしてマークされていない複数の候補が見つかりました)
      例外:
      BeansException - 作成エラーの場合
      関連事項:
    • getIfUnique

      default T getIfUnique(SupplierSE<T> defaultSupplier) throws BeansException
      このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を返します。
      パラメーター:
      defaultSupplier - ファクトリに一意の候補が存在しない場合にデフォルトオブジェクトを提供するためのコールバック
      戻り値:
      Bean のインスタンス、またはそのような Bean が使用できない場合、ファクトリで一意でない場合は、提供されたデフォルトオブジェクト (つまり、プライマリとしてマークされていない複数の候補が見つかりました)
      例外:
      BeansException - 作成エラーの場合
      導入:
      5.0
      関連事項:
    • ifUnique

      default void ifUnique(ConsumerSE<T> dependencyConsumer) throws BeansException
      一意である場合、このファクトリによって管理されるオブジェクトのインスタンス(おそらく共有または独立)を使用します。
      パラメーター:
      dependencyConsumer - 一意の場合、ターゲットオブジェクトを処理するためのコールバック (他に呼ばれない)
      例外:
      BeansException - 作成エラーの場合
      導入:
      5.0
      関連事項:
    • iterator

      default IteratorSE<T> iterator()
      特定の順序の保証なしで(ただし、通常は登録順で)、一致するすべてのオブジェクトインスタンスで IteratorSE を返します。
      次で指定:
      インターフェース IterableSE<T>iterator 
      導入:
      5.1
      関連事項:
    • stream

      default StreamSE<T> stream()
      特定の順序を保証せずに、一致するすべてのオブジェクトインスタンスのシーケンシャル StreamSE を返します(ただし、通常は登録順です)。
      導入:
      5.1
      関連事項:
    • orderedStream

      default StreamSE<T> orderedStream()
      ファクトリの共通の順序コンパレーターに従って事前に順序付けされた、一致するすべてのオブジェクトインスタンスのシーケンシャル StreamSE を返します。

      標準の Spring アプリケーションコンテキストでは、これは Ordered の規則に従って順序付けされ、アノテーションベースの構成の場合は、Order アノテーションも考慮されます。これは、リスト / 配列型の複数要素のインジェクションポイントに類似しています。

      導入:
      5.1
      関連事項: