クラス DestinationPatternsMessageCondition

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

public class DestinationPatternsMessageCondition extends AbstractMessageCondition<DestinationPatternsMessageCondition>
MessageCondition は、メッセージの宛先ヘッダーを、RouteMatcher を介して 1 つ以上のパターンと照合します。
導入:
4.0
作成者:
Rossen Stoyanchev
  • フィールドの詳細

    • LOOKUP_DESTINATION_HEADER

      public static final StringSE LOOKUP_DESTINATION_HEADER
      「ルックアップ宛先」ヘッダーの名前。
      関連事項:
  • コンストラクターの詳細

    • DestinationPatternsMessageCondition

      public DestinationPatternsMessageCondition(StringSE... patterns)
      パターンのみのコンストラクター。デフォルト設定で AntPathMatcher のインスタンスを作成して使用します。

      "/" で始まらない空ではないパターンは、"/" で始まります。

      パラメーター:
      patterns - 一致する URL パターン、または 0 の場合は常に一致
    • DestinationPatternsMessageCondition

      public DestinationPatternsMessageCondition(StringSE[] patterns, @Nullable PathMatcher matcher)
      パターンと PathMatcher インスタンスを持つコンストラクター。
      パラメーター:
      patterns - 一致する URL パターン、または 0 の場合は常に一致
      matcher - 使用する PathMatcher 
    • DestinationPatternsMessageCondition

      public DestinationPatternsMessageCondition(StringSE[] patterns, RouteMatcher routeMatcher)
      パターンと RouteMatcher インスタンスを持つコンストラクター。
      パラメーター:
      patterns - 一致する URL パターン、または 0 の場合は常に一致
      routeMatcher - 使用する RouteMatcher 
      導入:
      5.2
  • メソッドの詳細

    • getPatterns

      public SetSE<StringSE> getPatterns()
    • getContent

      protected CollectionSE<StringSE> getContent()
      クラスからコピーされた説明: AbstractMessageCondition
      メッセージ条件を構成するオブジェクトのコレクション(宛先パターンなど)を返します。null は返しません。
      次で指定:
      クラス AbstractMessageCondition<DestinationPatternsMessageCondition>getContent 
    • getToStringInfix

      protected StringSE getToStringInfix()
      クラスからコピーされた説明: AbstractMessageCondition
      コンテンツの個別のアイテムを出力するときに使用する表記。たとえば、URL パターンの場合は "| |"、パラメーター式の場合は "&&" です。
      次で指定:
      クラス AbstractMessageCondition<DestinationPatternsMessageCondition>getToStringInfix 
    • combine

      次のように、現在のインスタンス("this" )と「その他」のインスタンスからの URL パターンを持つ新しいインスタンスを返します。
      • 両方のインスタンスにパターンがある場合は、"this" のパターンを PathMatcher.combine(String, String) を使用して「その他」のパターンと組み合わせます。
      • 1 つのインスタンスのみにパターンがある場合は、使用します。
      • どちらのインスタンスにもパターンがない場合は、空の文字列("" など)を使用します。
      パラメーター:
      other - 組み合わせる条件
      戻り値:
      結果のメッセージ条件
    • getMatchingCondition

      @Nullable public DestinationPatternsMessageCondition getMatchingCondition(Message<?> message)
      指定されたメッセージの宛先に一致するパターンがあるかどうかを確認し、PathMatcher.getPatternComparator(String) でソートされた一致するパターンを含むことが保証されているインスタンスを返します。
      パラメーター:
      message - 一致するメッセージ
      戻り値:
      条件にパターンが含まれていない場合も同じインスタンス。または、ソートされた一致パターンを持つ新しい条件。または null (宛先が抽出できない場合、または一致がない場合)
    • compareTo

      public int compareTo(DestinationPatternsMessageCondition other, Message<?> message)
      含まれている宛先パターンに基づいて 2 つの条件を比較します。パターンは PathMatcher.getPatternComparator(String) を介して一度に 1 つずつ比較されます。比較されたすべてのパターンが等しく一致するが、1 つのインスタンスにさらに多くのパターンがある場合、より近い一致と見なされます。

      両方のインスタンスが getMatchingCondition(Message) を介して取得され、リクエストに一致するパターンのみが含まれ、最も一致するものが上にソートされることを前提としています。