|
Spring Integration | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.springframework.integration.context.IntegrationObjectSupport org.springframework.integration.handler.AbstractMessageHandler org.springframework.integration.handler.AbstractReplyProducingMessageHandler org.springframework.integration.http.outbound.HttpRequestExecutingMessageHandler
public class HttpRequestExecutingMessageHandler
A MessageHandler
implementation that executes HTTP requests by delegating
to a RestTemplate
instance. If the 'expectReply' flag is set to true (the default)
then a reply Message will be generated from the HTTP response. If that response contains
a body, it will be used as the reply Message's payload. Otherwise the reply Message's
payload will contain the response status as an instance of the HttpStatus
enum.
When there is a response body, the HttpStatus
enum instance will instead be
copied to the MessageHeaders of the reply. In both cases, the response headers will
be mapped to the reply Message's headers by this handler's HeaderMapper
instance.
Field Summary |
---|
Fields inherited from class org.springframework.integration.context.IntegrationObjectSupport |
---|
logger |
Fields inherited from interface org.springframework.core.Ordered |
---|
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE |
Constructor Summary | |
---|---|
HttpRequestExecutingMessageHandler(java.lang.String uri)
Create a handler that will send requests to the provided URI. |
|
HttpRequestExecutingMessageHandler(java.lang.String uri,
org.springframework.web.client.RestTemplate restTemplate)
Create a handler that will send requests to the provided URI using a provided RestTemplate |
|
HttpRequestExecutingMessageHandler(java.net.URI uri)
Create a handler that will send requests to the provided URI. |
Method Summary | |
---|---|
protected java.lang.Object |
handleRequestMessage(Message<?> requestMessage)
Subclasses must implement this method to handle the request Message. |
protected org.springframework.http.HttpHeaders |
mapHeaders(Message<?> message)
|
void |
onInit()
Subclasses may implement this for initialization logic. |
void |
setCharset(java.lang.String charset)
Specify the charset name to use for converting String-typed payloads to bytes. |
void |
setErrorHandler(org.springframework.web.client.ResponseErrorHandler errorHandler)
Set the ResponseErrorHandler for the underlying RestTemplate . |
void |
setExpectedResponseType(java.lang.Class<?> expectedResponseType)
Specify the expected response type for the REST request. |
void |
setExpectReply(boolean expectReply)
Specify whether a reply Message is expected. |
void |
setExtractPayload(boolean extractPayload)
Specify whether the outbound message's payload should be extracted when preparing the request body. |
void |
setHeaderMapper(HeaderMapper<org.springframework.http.HttpHeaders> headerMapper)
Set the HeaderMapper to use when mapping between HTTP headers and MessageHeaders. |
void |
setHttpMethod(org.springframework.http.HttpMethod httpMethod)
Specify the HttpMethod for requests. |
void |
setMessageConverters(java.util.List<org.springframework.http.converter.HttpMessageConverter<?>> messageConverters)
Set a list of HttpMessageConverter s to be used by the underlying RestTemplate . |
void |
setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory requestFactory)
Set the ClientHttpRequestFactory for the underlying RestTemplate . |
void |
setTransferCookies(boolean transferCookies)
Set to true if you wish 'Set-Cookie' headers in responses to be transferred as 'Cookie' headers in subsequent interactions for a message. |
void |
setUriVariableExpressions(java.util.Map<java.lang.String,org.springframework.expression.Expression> uriVariableExpressions)
Set the Map of URI variable expressions to evaluate against the outbound message when replacing the variable placeholders in a URI template. |
Methods inherited from class org.springframework.integration.handler.AbstractReplyProducingMessageHandler |
---|
getMessagingTemplate, handleMessageInternal, setChannelResolver, setOutputChannel, setRequiresReply, setSendTimeout, shouldCopyRequestHeaders |
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler |
---|
getComponentType, getOrder, handleMessage, setOrder, setShouldTrack |
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport |
---|
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.springframework.integration.context.NamedComponent |
---|
getComponentName |
Constructor Detail |
---|
public HttpRequestExecutingMessageHandler(java.net.URI uri)
public HttpRequestExecutingMessageHandler(java.lang.String uri)
public HttpRequestExecutingMessageHandler(java.lang.String uri, org.springframework.web.client.RestTemplate restTemplate)
uri
- restTemplate
- Method Detail |
---|
public void setHttpMethod(org.springframework.http.HttpMethod httpMethod)
HttpMethod
for requests. The default method will be POST.
public void setExtractPayload(boolean extractPayload)
true
.
public void setCharset(java.lang.String charset)
public void setExpectReply(boolean expectReply)
public void setExpectedResponseType(java.lang.Class<?> expectedResponseType)
public void setErrorHandler(org.springframework.web.client.ResponseErrorHandler errorHandler)
ResponseErrorHandler
for the underlying RestTemplate
.
RestTemplate.setErrorHandler(ResponseErrorHandler)
public void setMessageConverters(java.util.List<org.springframework.http.converter.HttpMessageConverter<?>> messageConverters)
HttpMessageConverter
s to be used by the underlying RestTemplate
.
Converters configured via this method will override the default converters.
RestTemplate.setMessageConverters(java.util.List)
public void setHeaderMapper(HeaderMapper<org.springframework.http.HttpHeaders> headerMapper)
HeaderMapper
to use when mapping between HTTP headers and MessageHeaders.
public void setRequestFactory(org.springframework.http.client.ClientHttpRequestFactory requestFactory)
ClientHttpRequestFactory
for the underlying RestTemplate
.
HttpAccessor.setRequestFactory(ClientHttpRequestFactory)
public void setUriVariableExpressions(java.util.Map<java.lang.String,org.springframework.expression.Expression> uriVariableExpressions)
public void setTransferCookies(boolean transferCookies)
transferCookies
- the transferCookies to set.public void onInit()
IntegrationObjectSupport
onInit
in class AbstractReplyProducingMessageHandler
protected java.lang.Object handleRequestMessage(Message<?> requestMessage)
AbstractReplyProducingMessageHandler
handleRequestMessage
in class AbstractReplyProducingMessageHandler
protected org.springframework.http.HttpHeaders mapHeaders(Message<?> message)
|
Spring Integration | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |