クラス ConsumesRequestCondition

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

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

    • ConsumesRequestCondition

      public ConsumesRequestCondition(StringSE... consumes)
      0 個以上の「消費」式から新しいインスタンスを作成します。
      パラメーター:
      consumes - RequestMapping.consumes() で説明されている構文を使用した式。式が 0 の場合、条件はすべてのリクエストに一致します
    • ConsumesRequestCondition

      public ConsumesRequestCondition(@Nullable StringSE[] consumes, @Nullable StringSE[] headers)
      「消費」および「ヘッダー」式を使用して新しいインスタンスを作成します。ヘッダー名が "Content-Type" ではない、またはヘッダー値が定義されていない「ヘッダー」式は無視されます。合計で 0 の式が指定されている場合、条件はすべてのリクエストに一致します
      パラメーター:
      consumes - RequestMapping.consumes() で説明されているとおり
      headers - RequestMapping.headers() で説明されているとおり
  • メソッドの詳細

    • getExpressions

      public SetSE<MediaTypeExpression> getExpressions()
      含まれている MediaType 式を返します。
    • getConsumableMediaTypes

      public SetSE<MediaType> getConsumableMediaTypes()
      否定表現を除く、この条件のメディア型を返します。
    • isEmpty

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

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

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

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

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

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

      次で指定:
      クラス AbstractRequestCondition<ConsumesRequestCondition>getToStringInfix 
    • setBodyRequired

      public void setBodyRequired(boolean bodyRequired)
      この状態がリクエストに本文をリクエストするかどうか。

      デフォルトでは、これは true に設定されています。この場合、リクエスト本文が必要であり、この条件は "Content-Type" ヘッダーと一致するか、"Content-Type:application/octet-stream" にフォールバックします。

      false に設定し、リクエストに本文がない場合、この条件は自動的に一致します。つまり、式をチェックしません。

      パラメーター:
      bodyRequired - リクエストに本文があることが期待されるかどうか
      導入:
      5.2
    • isBodyRequired

      public boolean isBodyRequired()
      setBodyRequired(boolean) の設定を返します。
      導入:
      5.2
    • combine

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

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

      public int compareTo(ConsumesRequestCondition other, HttpServletRequestEE request)
      戻り値:
      • 2 つの条件の式の数が同じ場合は 0
      • "this" に特定のメディア型式が複数ある場合、Less は 0 よりも大きい
      • 「その他」がより具体的なメディア型表現を持っている場合は 0 より大きい

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