public abstract class AbstractHeaderMapper<T> extends ObjectSE implements RequestReplyHeaderMapper<T>, BeanClassLoaderAware
RequestReplyHeaderMapper 実装の抽象基本クラス。| 修飾子と型 | クラスと説明 |
|---|---|
protected static class | AbstractHeaderMapper.CompositeHeaderMatcher 提供された AbstractHeaderMapper.HeaderMatcher の 1 つが headerName と一致する場合に一致する複合 AbstractHeaderMapper.HeaderMatcher。 |
protected static class | AbstractHeaderMapper.ContentBasedHeaderMatcher 指定されたヘッダーが候補のリストに含まれている場合に一致するコンテンツベースの AbstractHeaderMapper.HeaderMatcher。 |
static interface | AbstractHeaderMapper.HeaderMatcher 指定されたヘッダー名が一致するかどうかを判別するための戦略インターフェース。 |
protected static class | AbstractHeaderMapper.PatternBasedHeaderMatcher 指定されたヘッダーが指定された単純パターンの 1 つと一致する場合に一致するパターンベースの AbstractHeaderMapper.HeaderMatcher。 |
protected static class | AbstractHeaderMapper.PrefixBasedMatcher 指定されたヘッダーが構成可能なプレフィックスで始まる場合に一致するプレフィックスベースの AbstractHeaderMapper.HeaderMatcher。 |
protected static class | AbstractHeaderMapper.SinglePatternBasedHeaderMatcher 指定されたヘッダーが指定された単純パターンと一致する場合に一致するパターンベースの AbstractHeaderMapper.HeaderMatcher。 |
| 修飾子と型 | フィールドと説明 |
|---|---|
protected Log | logger |
static StringSE | NON_STANDARD_HEADER_NAME_PATTERN 標準ヘッダーではないヘッダーに一致する特別なパターン(つまり |
static StringSE | STANDARD_REPLY_HEADER_NAME_PATTERN 標準の応答ヘッダーにのみ一致する特別なパターン。 |
static StringSE | STANDARD_REQUEST_HEADER_NAME_PATTERN 標準のリクエストヘッダーにのみ一致する特別なパターン。 |
| 修飾子 | コンストラクターと説明 |
|---|---|
protected | AbstractHeaderMapper(StringSE standardHeaderPrefix, CollectionSE<StringSE> requestHeaderNames, CollectionSE<StringSE> replyHeaderNames) 新しいインスタンスを作成します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
protected AbstractHeaderMapper.HeaderMatcher | createDefaultHeaderMatcher(StringSE standardHeaderPrefix, CollectionSE<StringSE> headerNames) 指定されたヘッダーと標準ヘッダープレフィックスに基づいて、最初の AbstractHeaderMapper.HeaderMatcher を作成します。 |
protected AbstractHeaderMapper.HeaderMatcher | createHeaderMatcher(CollectionSE<StringSE> patterns) 指定された patterns のいずれかが一致する場合に一致する AbstractHeaderMapper.HeaderMatcher を作成します。 |
protected StringSE | createTargetPropertyName(StringSE propertyName, boolean fromMessageHeaders) 必要に応じて、指定された propertyName を変更します。 |
protected abstract MapSE<StringSE, ObjectSE> | extractStandardHeaders(T source) 指定されたソースから標準ヘッダーを抽出します。 |
protected abstract MapSE<StringSE, ObjectSE> | extractUserDefinedHeaders(T source) 指定されたソースからユーザー定義ヘッダーを抽出します。 |
void | fromHeadersToReply(MessageHeaders headers, T target) 指定された MessageHeaders から指定された応答ターゲットにマップします。 |
void | fromHeadersToRequest(MessageHeaders headers, T target) 指定された MessageHeaders から指定されたリクエストターゲットにマップします。 |
protected ClassLoaderSE | getClassLoader() |
protected <V> V | getHeaderIfAvailable(MapSE<StringSE, ObjectSE> headers, StringSE name, ClassSE<V> type) |
protected CollectionSE<StringSE> | getTransientHeaderNames() 一時ヘッダー名を返します。 |
protected void | populateStandardHeaders(MapSE<StringSE, ObjectSE> allHeaders, MapSE<StringSE, ObjectSE> subset, T target) 指定された標準ヘッダーを指定されたソースに入力します。 |
protected abstract void | populateStandardHeaders(MapSE<StringSE, ObjectSE> headers, T target) 指定された標準ヘッダーを指定されたソースに入力します。 |
protected abstract void | populateUserDefinedHeader(StringSE headerName, ObjectSE headerValue, T target) 指定されたユーザー定義ヘッダーを指定されたソースに入力します。 |
void | setBeanClassLoader(ClassLoaderSE classLoader) |
void | setReplyHeaderNames(StringSE... replyHeaderNames)MessageHeaders からのレスポンスにマップする必要があるヘッダー名を指定します。 |
void | setRequestHeaderNames(StringSE... requestHeaderNames) リクエストから MessageHeaders にマップする必要のあるヘッダー名を指定します。 |
MapSE<StringSE, ObjectSE> | toHeadersFromReply(T source) 指定された応答オブジェクトから抽象化された MessageHeaders にマップします。 |
MapSE<StringSE, ObjectSE> | toHeadersFromRequest(T source) 指定されたリクエストオブジェクトから抽象化された MessageHeaders にマップします。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSEpublic static final StringSE STANDARD_REQUEST_HEADER_NAME_PATTERN
public static final StringSE STANDARD_REPLY_HEADER_NAME_PATTERN
public static final StringSE NON_STANDARD_HEADER_NAME_PATTERN
protected final Log logger
protected AbstractHeaderMapper(StringSE standardHeaderPrefix, CollectionSE<StringSE> requestHeaderNames, CollectionSE<StringSE> replyHeaderNames)
standardHeaderPrefix - 標準ヘッダーを識別するヘッダープレフィックス。このようなプレフィックスは、ユーザー定義のヘッダーを標準のヘッダーと区別できます。設定されている場合、ユーザー定義のヘッダーもデフォルトでマップされます requestHeaderNames - リクエストから MessageHeaders にマップする必要のあるヘッダー名 replyHeaderNames - MessageHeaders からのレスポンスにマップする必要があるヘッダー名 public void setBeanClassLoader(ClassLoaderSE classLoader)
BeanClassLoaderAware の setBeanClassLoader protected ClassLoaderSE getClassLoader()
public void setRequestHeaderNames(StringSE... requestHeaderNames)
MessageHeaders にマップする必要のあるヘッダー名を指定します。値には、照合する単純なワイルドカードパターン( "foo *" や "* foo" など)を含めることもできます。
requestHeaderNames - リクエストヘッダー名。public void setReplyHeaderNames(StringSE... replyHeaderNames)
MessageHeaders からのレスポンスにマップする必要があるヘッダー名を指定します。値には、照合する単純なワイルドカードパターン( "foo *" や "* foo" など)を含めることもできます。
replyHeaderNames - 応答ヘッダー名。protected AbstractHeaderMapper.HeaderMatcher createDefaultHeaderMatcher(StringSE standardHeaderPrefix, CollectionSE<StringSE> headerNames)
AbstractHeaderMapper.HeaderMatcher を作成します。standardHeaderPrefix - 標準ヘッダーのプレフィックス。headerNames - マップするヘッダー名のコレクション。AbstractHeaderMapper.HeaderMatcher インスタンス。protected AbstractHeaderMapper.HeaderMatcher createHeaderMatcher(CollectionSE<StringSE> patterns)
patterns のいずれかが一致する場合に一致する AbstractHeaderMapper.HeaderMatcher を作成します。パターンには、ヘッダー名、foo*、*foo、within*foo などのワイルドカードパターンを使用できます。STANDARD_REQUEST_HEADER_NAME_PATTERN、STANDARD_REQUEST_HEADER_NAME_PATTERN、NON_STANDARD_HEADER_NAME_PATTERN などの特別なパターンも認識されます。
patterns - 適用するパターン public void fromHeadersToRequest(MessageHeaders headers, T target)
RequestReplyHeaderMapperMessageHeaders から指定されたリクエストターゲットにマップします。RequestReplyHeaderMapper<T> の fromHeadersToRequest headers - 抽象化された MessageHeaderstarget - ネイティブターゲットリクエスト public void fromHeadersToReply(MessageHeaders headers, T target)
RequestReplyHeaderMapperMessageHeaders から指定された応答ターゲットにマップします。RequestReplyHeaderMapper<T> の fromHeadersToReply headers - 抽象化された MessageHeaderstarget - ネイティブターゲットの返信 public MapSE<StringSE,ObjectSE> toHeadersFromRequest(T source)
RequestReplyHeaderMapperMessageHeaders にマップします。RequestReplyHeaderMapper<T> の toHeadersFromRequest source - ネイティブターゲットリクエスト public MapSE<StringSE,ObjectSE> toHeadersFromReply(T source)
RequestReplyHeaderMapperMessageHeaders にマップします。RequestReplyHeaderMapper<T> の toHeadersFromReply source - ネイティブターゲットの返信 @Nullable protected <V> V getHeaderIfAvailable(MapSE<StringSE,ObjectSE> headers, StringSE name, ClassSE<V> type)
protected StringSE createTargetPropertyName(StringSE propertyName, boolean fromMessageHeaders)
propertyName を変更します。デフォルトでは、元の propertyName が返されます。propertyName - プロパティの元の名前。fromMessageHeaders - プロパティが MessageHeaders インスタンスから発生するか(true)、このマッパーによって管理される型から発生するか(false)を指定します。protected CollectionSE<StringSE> getTransientHeaderNames()
protected abstract MapSE<StringSE,ObjectSE> extractStandardHeaders(T source)
source - 標準ヘッダーを抽出するためのソースオブジェクト。protected abstract MapSE<StringSE,ObjectSE> extractUserDefinedHeaders(T source)
source - ユーザー定義のヘッダーを抽出するためのソースオブジェクト。protected abstract void populateStandardHeaders(MapSE<StringSE,ObjectSE> headers, T target)
headers - 入力する標準ヘッダーのマップ。target - ヘッダーを設定するターゲットオブジェクト。protected void populateStandardHeaders(@Nullable MapSE<StringSE,ObjectSE> allHeaders, MapSE<StringSE,ObjectSE> subset, T target)
populateStandardHeaders(Map, Object) を呼び出します。allHeaders - トランジェントを含むすべてのヘッダー。subset - 入力する標準ヘッダーのマップ。target - ヘッダーを設定するターゲットオブジェクト。