クラス AbstractHandlerMethodMapping<T>
java.lang.ObjectSE
org.springframework.context.support.ApplicationObjectSupport
org.springframework.web.reactive.handler.AbstractHandlerMapping
org.springframework.web.reactive.result.method.AbstractHandlerMethodMapping<T>
- 型パラメーター:
T
- ハンドラーメソッドを受信リクエストに一致させるために必要な条件を含むHandlerMethod
のマッピング。
- 実装されたすべてのインターフェース:
Aware
、BeanNameAware
、InitializingBean
、ApplicationContextAware
、Ordered
、HandlerMapping
- 既知の直属サブクラス
RequestMappingInfoHandlerMapping
public abstract class AbstractHandlerMethodMapping<T>
extends AbstractHandlerMapping
implements InitializingBean
リクエストと
HandlerMethod
の間のマッピングを定義する HandlerMapping
実装の抽象基本クラス。 登録された各ハンドラーメソッドについて、マッピング型 <T>
の詳細を定義するサブクラスで一意のマッピングが維持されます。
- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Brian Clozel, Sam Brannen
フィールドサマリー
クラス org.springframework.web.reactive.handler.AbstractHandlerMapping から継承されたフィールド
mappingsLogger
クラス org.springframework.context.support.ApplicationObjectSupport から継承されたフィールド
logger
インターフェース org.springframework.web.reactive.HandlerMapping から継承されたフィールド
BEST_MATCHING_HANDLER_ATTRIBUTE, BEST_MATCHING_PATTERN_ATTRIBUTE, MATRIX_VARIABLES_ATTRIBUTE, PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE, URI_TEMPLATE_VARIABLES_ATTRIBUTE
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターのサマリー
方法の概要
修飾子と型メソッド説明void
初期化時にハンドラーメソッドを検出します。protected HandlerMethod
createHandlerMethod
(ObjectSE handler, MethodSE method) HandlerMethod インスタンスを作成します。protected void
detectHandlerMethods
(ObjectSE handler) ハンドラーでハンドラーメソッドを探します。protected CorsConfiguration
getCorsConfiguration
(ObjectSE handler, ServerWebExchange exchange) 指定されたハンドラーの CORS 構成を取得します。getDirectPaths
(T mapping) パターンではないリクエストマッピングパスを返します。reactor.core.publisher.Mono<HandlerMethod>
getHandlerInternal
(ServerWebExchange exchange) 指定されたリクエストのハンドラーメソッドを検索します。すべてのマッピングと HandlerMethod を含む(読み取り専用)マップを返します。protected abstract ComparatorSE<T>
getMappingComparator
(ServerWebExchange exchange) 一致するマッピングをソートするためのコンパレーターを返します。protected abstract T
getMappingForMethod
(MethodSE method, ClassSE<?> handlerType) ハンドラーメソッドのマッピングを提供します。protected abstract T
getMatchingMapping
(T mapping, ServerWebExchange exchange) マッピングが現在のリクエストに一致するかどうかを確認し、現在のリクエストに関連する条件を含む(潜在的に新しい)マッピングを返します。protected void
handleMatch
(T mapping, HandlerMethod handlerMethod, ServerWebExchange exchange) 一致するマッピングが見つかったときに呼び出されます。protected HandlerMethod
handleNoMatch
(SetSE<T> mappings, ServerWebExchange exchange) 一致するマッピングが見つからないときに呼び出されます。protected void
handlerMethodsInitialized
(MapSE<T, HandlerMethod> handlerMethods) すべてのハンドラーメソッドが検出された後に呼び出されます。protected boolean
hasCorsConfigurationSource
(ObjectSE handler) このハンドラーにCorsConfigurationSource
がある場合、true
を返します。protected CorsConfiguration
initCorsConfiguration
(ObjectSE handler, MethodSE method, T mapping) マッピングの CORS 設定を抽出して返します。protected void
ApplicationContext で Bean をスキャンし、ハンドラーメソッドを検出して登録します。protected abstract boolean
指定された型がハンドラーメソッドを持つハンドラーかどうか。protected HandlerMethod
lookupHandlerMethod
(ServerWebExchange exchange) 現在のリクエストに最適なハンドラーメソッドを検索します。protected void
registerHandlerMethod
(ObjectSE handler, MethodSE method, T mapping) ハンドラーメソッドとその一意のマッピングを登録します。void
registerMapping
(T mapping, ObjectSE handler, MethodSE method) 指定されたマッピングを登録します。void
unregisterMapping
(T mapping) 指定されたマッピングを登録解除します。クラス org.springframework.web.reactive.handler.AbstractHandlerMapping から継承されたメソッド
formatMappingName, getCorsProcessor, getHandler, getOrder, getPathPatternParser, setBeanName, setCorsConfigurations, setCorsConfigurationSource, setCorsProcessor, setOrder, setUseCaseSensitiveMatch, setUseTrailingSlashMatch
クラス org.springframework.context.support.ApplicationObjectSupport から継承されたメソッド
getApplicationContext, getMessageSourceAccessor, initApplicationContext, initApplicationContext, isContextRequired, obtainApplicationContext, requiredContextClass, setApplicationContext
コンストラクターの詳細
AbstractHandlerMethodMapping
public AbstractHandlerMethodMapping()
メソッドの詳細
getHandlerMethods
すべてのマッピングと HandlerMethod を含む(読み取り専用)マップを返します。registerMapping
指定されたマッピングを登録します。このメソッドは、初期化が完了した後、実行時に呼び出すことができます。
- パラメーター:
mapping
- ハンドラーメソッドのマッピングhandler
- ハンドラーmethod
- メソッド
unregisterMapping
指定されたマッピングを登録解除します。このメソッドは、初期化が完了した後、実行時に呼び出すことができます。
- パラメーター:
mapping
- 登録解除するマッピング
afterPropertiesSet
public void afterPropertiesSet()初期化時にハンドラーメソッドを検出します。- 次で指定:
- インターフェース
InitializingBean
のafterPropertiesSet
initHandlerMethods
protected void initHandlerMethods()ApplicationContext で Bean をスキャンし、ハンドラーメソッドを検出して登録します。detectHandlerMethods
ハンドラーでハンドラーメソッドを探します。- パラメーター:
handler
- ハンドラーまたはハンドラーインスタンスの Bean 名
registerHandlerMethod
ハンドラーメソッドとその一意のマッピングを登録します。検出された各ハンドラーメソッドに対して起動時に呼び出されます。- パラメーター:
handler
- ハンドラーまたはハンドラーインスタンスの Bean 名method
- 登録する方法mapping
- ハンドラーメソッドに関連付けられたマッピング条件- 例外:
IllegalStateExceptionSE
- 別のメソッドが同じマッピングですでに登録されている場合
createHandlerMethod
HandlerMethod インスタンスを作成します。- パラメーター:
handler
- Bean 名または実際のハンドラーインスタンスmethod
- ターゲットメソッド- 戻り値:
- 作成された HandlerMethod
initCorsConfiguration
@Nullable protected CorsConfiguration initCorsConfiguration(ObjectSE handler, MethodSE method, T mapping) マッピングの CORS 設定を抽出して返します。handlerMethodsInitialized
すべてのハンドラーメソッドが検出された後に呼び出されます。- パラメーター:
handlerMethods
- ハンドラーメソッドとマッピングを含む読み取り専用マップ。
getHandlerInternal
指定されたリクエストのハンドラーメソッドを検索します。- 次で指定:
- クラス
AbstractHandlerMapping
のgetHandlerInternal
- パラメーター:
exchange
- 現在の交換- 戻り値:
- 一致するハンドラーの
Mono
(存在する場合)
lookupHandlerMethod
@Nullable protected HandlerMethod lookupHandlerMethod(ServerWebExchange exchange) throws ExceptionSE 現在のリクエストに最も一致するハンドラーメソッドを検索します。複数の一致が見つかった場合、最適な一致が選択されます。- パラメーター:
exchange
- 現在の交換- 戻り値:
- 最適なハンドラーメソッド、または一致しない場合は
null
- 例外:
ExceptionSE
- 関連事項:
handleMatch
一致するマッピングが見つかったときに呼び出されます。- パラメーター:
mapping
- 一致するマッピングhandlerMethod
- マッチング方法exchange
- 現在の交換
handleNoMatch
@Nullable protected HandlerMethod handleNoMatch(SetSE<T> mappings, ServerWebExchange exchange) throws ExceptionSE 一致するマッピングが見つからないときに呼び出されます。- パラメーター:
mappings
- 登録済みのすべてのマッピングexchange
- 現在の交換- 戻り値:
- 代替 HandlerMethod または
null
- 例外:
ExceptionSE
- エラーステータスコードに変換できる詳細を提供します
hasCorsConfigurationSource
クラスからコピーされた説明:AbstractHandlerMapping
このハンドラーにCorsConfigurationSource
がある場合、true
を返します。- オーバーライド:
- クラス
AbstractHandlerMapping
のhasCorsConfigurationSource
getCorsConfiguration
@Nullable protected CorsConfiguration getCorsConfiguration(ObjectSE handler, ServerWebExchange exchange) クラスからコピーされた説明:AbstractHandlerMapping
指定されたハンドラーの CORS 構成を取得します。- オーバーライド:
- クラス
AbstractHandlerMapping
のgetCorsConfiguration
- パラメーター:
handler
- チェックするハンドラー (非null
)exchange
- 現在の交換- 戻り値:
- ハンドラーの CORS 構成、ない場合は
null
isHandler
指定された型がハンドラーメソッドを持つハンドラーかどうか。- パラメーター:
beanType
- チェックされている Bean の型- 戻り値:
- これがハンドラー型の場合は "true"、そうでない場合は "false"。
getMappingForMethod
ハンドラーメソッドのマッピングを提供します。マッピングを提供できないメソッドは、ハンドラーメソッドではありません。- パラメーター:
method
- マッピングを提供する方法handlerType
- ハンドラー型、場合によってはメソッドの宣言クラスのサブ型- 戻り値:
- マッピング、またはメソッドがマッピングされていない場合は
null
getDirectPaths
パターンではないリクエストマッピングパスを返します。- 導入:
- 5.3
getMatchingMapping
マッピングが現在のリクエストに一致するかどうかを確認し、現在のリクエストに関連する条件を含む(潜在的に新しい)マッピングを返します。- パラメーター:
mapping
- 一致を取得するマッピングexchange
- 現在の交換- 戻り値:
- 一致、またはマッピングが一致しない場合は
null
getMappingComparator
一致するマッピングをソートするためのコンパレータを返します。返されたコンパレータは、「より良い」一致をより高い順に並べ替えます。- パラメーター:
exchange
- 現在の交換- 戻り値:
- コンパレータ (非
null
)