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
EndpointExecutionChaincontains an endpoint Object, rather than even a tag interface, so that endpoints are not constrained in any way. For example, aEndpointAdaptercould be written to allow another framework's endpoint objects to be used.Returns
nullif no match was found. This is by design. TheMessageDispatcherwill query all registeredEndpointMappingbeans 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
nullif no mapping is found - Throws:
Exception- if there is an internal error
-