Interface EndpointMapping
- All Known Subinterfaces:
SoapEndpointMapping
- All Known Implementing Classes:
AbstractActionEndpointMapping
,AbstractActionMethodEndpointMapping
,AbstractAddressingEndpointMapping
,AbstractAnnotationMethodEndpointMapping
,AbstractEndpointMapping
,AbstractMapBasedEndpointMapping
,AbstractMethodEndpointMapping
,AbstractQNameEndpointMapping
,AnnotationActionEndpointMapping
,DelegatingSoapEndpointMapping
,PayloadRootAnnotationMethodEndpointMapping
,PayloadRootQNameEndpointMapping
,SimpleActionEndpointMapping
,SimpleMethodEndpointMapping
,SoapActionAnnotationMethodEndpointMapping
,SoapActionEndpointMapping
,UriEndpointMapping
,XmlRootElementEndpointMapping
,XPathPayloadEndpointMapping
This class can be implemented by application developers, although this is not always
necessary, as PayloadRootQNameEndpointMapping
and
SoapActionEndpointMapping
are included.
HandlerMapping implementations can support mapped interceptors but do not have to. An
endpoint will always be wrapped in a EndpointExecutionChain
instance,
optionally accompanied by some EndpointInterceptor
instances. The
MessageDispacher
will first call each EndpointInterceptor
's
handlerRequest
method in the given order, finally invoking the endpoint itself
if all handlerRequest
methods have returned true
.
- Since:
- 1.0.0
- Author:
- Arjen Poutsma
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiongetEndpoint
(MessageContext messageContext) Returns an endpoint and any interceptors for this message context.
-
Method Details
-
getEndpoint
Returns an endpoint and any interceptors for this message context. The choice may be made on message contents, transport request url, a routing table, or any factor the implementing class chooses.The returned
EndpointExecutionChain
contains an endpoint Object, rather than even a tag interface, so that endpoints are not constrained in any way. For example, aEndpointAdapter
could be written to allow another framework's endpoint objects to be used.Returns
null
if no match was found. This is by design. TheMessageDispatcher
will query all registeredEndpointMapping
beans to find a match, and only decide there is an error if none can find an endpoint.- Returns:
- a HandlerExecutionChain instance containing endpoint object and any
interceptors, or
null
if no mapping is found - Throws:
Exception
- if there is an internal error
-