クラス ProducesRequestCondition

実装されたすべてのインターフェース:
RequestCondition<ProducesRequestCondition>

public final class ProducesRequestCondition extends AbstractRequestCondition<ProducesRequestCondition>
リクエストの "Accept" ヘッダーをメディア型式のリストに一致させる論理和('| |')リクエスト条件。2 種類のメディア型式がサポートされています。これらは、ヘッダー名が "Accept" である RequestMapping.produces() および RequestMapping.headers() で説明されています。使用する構文に関係なく、セマンティクスは同じです。
導入:
5.0
作成者:
Rossen Stoyanchev
  • コンストラクターの詳細

  • メソッドの詳細

    • getExpressions

      public SetSE<MediaTypeExpression> getExpressions()
      含まれている「プロデュース」式を返します。
    • getProducibleMediaTypes

      public SetSE<MediaType> getProducibleMediaTypes()
      否定表現を除く、含まれている作成可能なメディア型を返します。
    • isEmpty

      public boolean isEmpty()
      条件にメディア型式があるかどうか。
      オーバーライド:
      クラス AbstractRequestCondition<ProducesRequestCondition>isEmpty 
      戻り値:
      空の場合は true。それ以外の場合は false 
    • getContent

      protected ListSE<org.springframework.web.reactive.result.condition.ProducesRequestCondition.ProduceMediaTypeExpression> getContent()
      クラスからコピーされた説明: AbstractRequestCondition
      リクエスト条件を構成する個別のアイテムを返します。

      たとえば、URL パターン、HTTP リクエストメソッド、パラメーター式など。

      次で指定:
      クラス AbstractRequestCondition<ProducesRequestCondition>getContent 
      戻り値:
      オブジェクトのコレクション (非 null)
    • getToStringInfix

      protected StringSE getToStringInfix()
      クラスからコピーされた説明: AbstractRequestCondition
      コンテンツの個別のアイテムを出力するときに使用する表記。

      たとえば、URL パターンの " || " または param 式の " && "

      次で指定:
      クラス AbstractRequestCondition<ProducesRequestCondition>getToStringInfix 
    • combine

      式がある場合は、「その他」のインスタンスを返します。それ以外の場合は "this" インスタンスを返します。実際には、これは、メソッドレベルの「プロデュース」が型レベルの「プロデュース」条件をオーバーライドすることを意味します。
      パラメーター:
      other - 組み合わせる条件。
      戻り値:
      2 つの条件インスタンスを組み合わせた結果であるリクエスト条件インスタンス。
    • getMatchingCondition

      @Nullable public ProducesRequestCondition getMatchingCondition(ServerWebExchange exchange)
      含まれているメディア型式のいずれかが指定されたリクエストの "Content-Type" ヘッダーと一致するかどうかを確認し、一致する式のみが含まれていることが保証されているインスタンスを返します。一致は MediaType.isCompatibleWith(MediaType) を介して実行されます。
      パラメーター:
      exchange - 現在の交換
      戻り値:
      式がない場合は同じインスタンス。または、式が一致する新しい条件。一致する式がない場合は null
    • compareTo

      public int compareTo(ProducesRequestCondition other, ServerWebExchange exchange)
      これと別の「生成」条件を次のように比較します。
      1. 'Accept' ヘッダーメディア型を MimeTypeUtils.sortBySpecificity(List) を介して品質値で並べ替え、リストを繰り返します。
      2. 最初に MimeType.equals(Object) と一致し、次に MediaType.includes(MediaType) と一致する、各「生成」条件で一致するメディア型の最初のインデックスを取得します。
      3. より低いインデックスが見つかった場合、そのインデックスの条件が優先されます。
      4. 両方のインデックスが等しい場合、インデックスのメディア型は MediaType.isMoreSpecific(MimeType) とさらに比較されます。

      両方のインスタンスが getMatchingCondition(ServerWebExchange) を介して取得されており、各インスタンスに一致する生成可能なメディア型式のみが含まれているか、そうでない場合は空であると想定されます。

    • clearMediaTypesAttribute

      public static void clearMediaTypesAttribute(ServerWebExchange exchange)
      これを使用して、解析され、リクエストされたメディア型を含む MEDIA_TYPES_ATTRIBUTE をクリアします。
      パラメーター:
      exchange - 現在の交換
      導入:
      5.2