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

  • 型パラメーター:
    T - 特定の実装によって処理されるコンテナー型

    public interface ValueExtractor<T>
    型 T のコンテナーオブジェクトから値を抽出するために使用されるロジックを定義します。

    OptionalSEListSEMapSE などのジェネリクス型の値エクストラクターは、T の 1 つの特定の型パラメーターに関連付けられています。ExtractedValue アノテーションは、その型パラメーターをマークするために使用されます。OptionalIntSE などの非ジェネリクス型の値エクストラクターは、ExtractedValue.type() を使用してラップされた要素の型を宣言する必要があります。

    抽出された値は、ValueExtractor.ValueReceiver の対応するメソッドに渡されます。

    List の一般的な値抽出の実装は、次のようになります。

     public class ListValueExtractor implements
             ValueExtractor<List<@ExtractedValue ?>> {
    
         @Override
         public void extractValues(List<?> originalValue, ValueReceiver receiver) {
             for ( int i = 0; i < originalValue.size(); i++ ) {
                 receiver.indexedValue( "<list element>", i, originalValue.get( i ) );
             }
         }
     }
     
    導入:
    2.0
    作成者:
    Gunnar Morling, Guillaume Smet
    関連事項:
    ExtractedValue, UnwrapByDefault
    • メソッドの詳細

      • extractValues

        void extractValues​(T originalValue,
                           ValueExtractor.ValueReceiver receiver)
        元のオブジェクトから検証する値を抽出します。
        パラメーター:
        originalValue - 値を抽出する元の値、決して null
        receiver - 対応する ValueReceiver