public class HttpConnector extends TcpConnector
HttpConnector
provides a way of receiving and sending http requests
and responses. The Connector itself handles dispatching http requests. The
HttpMessageReceiver
handles the receiving requests and processing
of headers This endpoint recognises the following properties -
CLIENT, DEFAULT_BACKLOG, DEFAULT_BUFFER_SIZE, DEFAULT_SO_LINGER, DEFAULT_SOCKET_TIMEOUT, DEFAULT_WAIT_TIMEOUT, KEEP_SEND_SOCKET_OPEN_PROPERTY, SEND_TCP_NO_DELAY_SYSTEM_PROPERTY, SERVER, TCP
createMultipleTransactedReceivers, DEFAULT_NUM_CONCURRENT_TX_RECEIVERS, dispatcherFactory, dispatcherPoolFactory, dispatchers, initialStateStopped, lifecycleManager, logger, muleContext, muleMessageFactory, name, numberOfConcurrentTransactedReceivers, PROPERTY_POLLING_FREQUENCY, receivers, requesterFactory, requesters, serviceDescriptor, serviceOverrides, sessionHandler, startOnConnect
INT_VALUE_NOT_SET
PHASE_NAME
Constructor and Description |
---|
HttpConnector(MuleContext context) |
Modifier and Type | Method and Description |
---|---|
protected void |
applyDispatcherLifecycle(MessageDispatcher dispatcher) |
protected MessageDispatcher |
borrowDispatcher(OutboundEndpoint endpoint) |
void |
connect(EndpointURI endpointURI) |
MessageProcessor |
createDispatcherMessageProcessor(OutboundEndpoint endpoint) |
void |
disconnect(EndpointURI endpointURI) |
protected HttpClient |
doClientConnect() |
protected void |
doDispose()
Template method to perform any work when destroying the connectoe
|
protected void |
doInitialise() |
protected void |
doStart()
Template method to perform any work when starting the connectoe
|
protected void |
doStop()
Template method to perform any work when stopping the connectoe
|
static MessageReceiver |
findReceiverByStem(Map<Object,MessageReceiver> receivers,
String uriStr) |
static MessageReceiver |
findReceiverByStemConsideringMatchingHost(Map<Object,MessageReceiver> receivers,
String uri) |
HttpConnectionManager |
getClientConnectionManager() |
String |
getCookieSpec() |
String |
getProtocol() |
String |
getProxyHostname() |
String |
getProxyPassword() |
int |
getProxyPort() |
String |
getProxyUsername() |
MessageReceiver |
getReceiver(FlowConstruct flowConstruct,
InboundEndpoint endpoint) |
protected Object |
getReceiverKey(FlowConstruct flowConstruct,
InboundEndpoint endpoint)
The method determines the key used to store the receiver against.
|
Map |
getReceivers()
Getter for property 'receivers'.
|
protected ServerSocket |
getServerSocket(URI uri) |
boolean |
isEnableCookies() |
boolean |
isKeepSendSocketOpen()
Deprecated.
Use keepAlive property in the outbound endpoint.
|
boolean |
isProxyNtlmAuthentication() |
HttpMessageReceiver |
lookupReceiver(Socket socket,
HttpRequest request)
Deprecated.
|
HttpMessageReceiver |
lookupReceiver(Socket socket,
RequestLine requestLine) |
MessageReceiver |
lookupReceiver(String key) |
static String |
normalizeUrl(String url)
Ensures that the supplied URL starts with a '/'.
|
void |
registerListener(InboundEndpoint endpoint,
MessageProcessor listener,
FlowConstruct flowConstruct)
Registers a MessageProcessor listener which will listen to new message
received from a specific transport channel and then processed by the endpoint.
|
protected void |
returnDispatcher(OutboundEndpoint endpoint,
MessageDispatcher dispatcher) |
void |
setClientConnectionManager(HttpConnectionManager clientConnectionManager) |
void |
setCookieSpec(String cookieSpec) |
void |
setEnableCookies(boolean enableCookies) |
void |
setKeepSendSocketOpen(boolean keepSendSocketOpen)
Deprecated.
Use keepAlive property in the outbound endpoint.
|
void |
setProxyHostname(String host) |
void |
setProxyNtlmAuthentication(boolean proxyNtlmAuthentication) |
void |
setProxyPassword(String string) |
void |
setProxyPort(int port) |
void |
setProxyUsername(String string) |
protected void |
setupClientAuthorization(MuleEvent event,
HttpMethod httpMethod,
HttpClient client,
ImmutableEndpoint endpoint) |
static boolean |
uriMatchesReceiver(URI uri,
URI receiverUri) |
configureSocket, doConnect, doDisconnect, getBacklog, getBufferSize, getClientSoTimeout, getConnectionTimeout, getDispatchers, getKeepAliveMonitor, getKeepAliveTimeout, getOutputStream, getReceiveBacklog, getReceiveBufferSize, getSendBufferSize, getServerSocketFactory, getServerSoTimeout, getSocket, getSocketFactory, getSocketMaxWait, getSocketSoLinger, getSocketsPoolMaxActive, getSocketsPoolMaxIdle, getSocketsPoolMaxWait, getSocketsPoolNumActive, getTcpProtocol, isFailOnUnresolvedHost, isKeepAlive, isResponseEnabled, isReuseAddress, isSendTcpNoDelay, setBacklog, setBufferSize, setClientSoTimeout, setConnectionTimeout, setDispatcherFactory, setFailOnUnresolvedHost, setKeepAlive, setKeepAliveTimeout, setReceiveBacklog, setReceiveBufferSize, setReuseAddress, setSendBufferSize, setSendTcpNoDelay, setServerSocketFactory, setServerSoTimeout, setSocketFactory, setSocketMaxWait, setSocketSoLinger, setTcpProtocol, setTimeout
clearDispatchers, clearRequesters, configureDispatcherPool, connect, createDefaultRedeliveryPolicy, createMuleMessageFactory, createOperationResource, createReceiver, createScheduler, destroyReceiver, disconnect, dispose, disposeReceivers, disposeWorkManagers, doUnregisterListener, fireNotification, getCanonicalURI, getConnectEventId, getConnectionDescription, getDefaultExchangePattern, getDefaultInboundTransformers, getDefaultOutboundTransformers, getDefaultResponseTransformers, getDispatcherFactory, getDispatcherPoolFactory, getDispatcherThreadingProfile, getDispatcherWorkManager, getInboundExchangePatterns, getLifecycleState, getMaxDispatchersActive, getMaxRequestersActive, getMaxTotalDispatchers, getMuleContext, getMuleMessageFactory, getName, getNumberOfConcurrentTransactedReceivers, getOperationResourceFactory, getOutboundExchangePatterns, getOutputStream, getReceivers, getReceiverThreadingProfile, getReceiverWorkManager, getReplyToHandler, getRequesterFactory, getRequesterThreadingProfile, getRequesterWorkManager, getRetryPolicyTemplate, getScheduler, getServiceDescriptor, getServiceOverrides, getSessionHandler, getSupportedProtocols, getTransactionalResource, handleWorkException, initFromServiceDescriptor, initialise, initialiseFromUrl, initWorkManagers, isConnected, isConnecting, isCreateMultipleTransactedReceivers, isDisposed, isEnableMessageEvents, isInitialised, isInitialStateStopped, isStarted, isStarting, isStopped, isStopping, isValidateConnections, registerSupportedMetaProtocol, registerSupportedProtocol, registerSupportedProtocolWithoutPrefix, request, request, setConnected, setConnecting, setCreateMultipleTransactedReceivers, setDispatcherPoolFactory, setDispatcherPoolMaxWait, setDispatcherPoolWhenExhaustedAction, setDispatcherThreadingProfile, setDynamicNotification, setInitialStateStopped, setMaxDispatchersActive, setMaxRequestersActive, setName, setNumberOfConcurrentTransactedReceivers, setReceiverThreadingProfile, setRequesterFactory, setRequesterPoolMaxWait, setRequesterPoolWhenExhaustedAction, setRequesterThreadingProfile, setRetryPolicyTemplate, setServiceOverrides, setSessionHandler, setSupportedProtocols, setupDispatchReturn, setupRequestReturn, setValidateConnections, shutdownScheduler, start, startAfterConnect, stop, supportsProtocol, toString, unregisterListener, unregisterSupportedProtocol, updateCachedNotificationHandler, validateConnection, workAccepted, workCompleted, workRejected, workStarted
public static final String HTTP
public static final String HTTP_PREFIX
public static final String DISABLE_STALE_CONNECTION_CHECK_SYSTEM_PROPERTY
public static final String SINGLE_DISPATCHER_PER_ENDPOINT_SYSTEM_PROPERTY
public static final String HTTP_STATUS_PROPERTY
public static final String HTTP_VERSION_PROPERTY
@Deprecated public static final String HTTP_CUSTOM_HEADERS_MAP_PROPERTY
public static final String HTTP_HEADERS
public static final String HTTP_QUERY_PARAMS
public static final String HTTP_QUERY_STRING
public static final String HTTP_METHOD_PROPERTY
public static final String HTTP_REQUEST_PROPERTY
public static final String HTTP_REQUEST_PATH_PROPERTY
public static final String HTTP_CONTEXT_PATH_PROPERTY
public static final String HTTP_CONTEXT_URI_PROPERTY
public static final String HTTP_RELATIVE_PATH_PROPERTY
public static final String HTTP_SERVLET_REQUEST_PROPERTY
public static final String HTTP_SERVLET_RESPONSE_PROPERTY
public static final String HTTP_PARAMS_PROPERTY
HttpMethodParams
object in the client
request to be set on the HttpMethod request objectpublic static final String HTTP_GET_BODY_PARAM_PROPERTY
public static final String DEFAULT_HTTP_GET_BODY_PARAM_PROPERTY
public static final String HTTP_POST_BODY_PARAM_PROPERTY
public static final String HTTP_DISABLE_STATUS_CODE_EXCEPTION_CHECK
public static final String HTTP_ENCODE_PARAMVALUE
protected Map<OutboundEndpoint,MessageDispatcher> endpointDispatchers
public static final String HTTP_COOKIE_SPEC_PROPERTY
public static final String HTTP_COOKIES_PROPERTY
public static final String HTTP_ENABLE_COOKIES_PROPERTY
public static final String COOKIE_SPEC_NETSCAPE
public static final String COOKIE_SPEC_RFC2109
public static final String ROOT_PATH
public static final int DEFAULT_CONNECTION_TIMEOUT
public static final String BIND_TO_ALL_INTERFACES_IP
protected HttpConnectionManager clientConnectionManager
public HttpConnector(MuleContext context)
protected void doInitialise() throws InitialisationException
doInitialise
in class TcpConnector
InitialisationException
protected void doDispose()
AbstractConnector
doDispose
in class TcpConnector
protected void doStop() throws MuleException
AbstractConnector
doStop
in class TcpConnector
MuleException
- if the method failsprotected void doStart() throws MuleException
AbstractConnector
doStart
in class TcpConnector
MuleException
- if the method failspublic void registerListener(InboundEndpoint endpoint, MessageProcessor listener, FlowConstruct flowConstruct) throws Exception
Connector
registerListener
in interface Connector
registerListener
in class AbstractConnector
endpoint
- defines both the transport and channel/resource uri as well
the processing (transformation/filtering) that should occur when
the endpoint processes a new message from the transport receiver.listener
- the listener that will be invoked when messages are received
on the endpoint.flowConstruct
- reference to the flow construct that the listener is part
of for use as context for logging, notifications and error
handling.Exception
protected Object getReceiverKey(FlowConstruct flowConstruct, InboundEndpoint endpoint)
getReceiverKey
in class AbstractConnector
endpoint
- the endpoint being registered for the serviceflowConstruct
- the service for which the endpoint is being registeredpublic String getProtocol()
getProtocol
in interface Connector
getProtocol
in class TcpConnector
Connector.getProtocol()
public String getProxyHostname()
public String getProxyPassword()
public int getProxyPort()
public String getProxyUsername()
public void setProxyHostname(String host)
public void setProxyPassword(String string)
public void setProxyPort(int port)
public void setProxyUsername(String string)
public Map getReceivers()
AbstractConnector
getReceivers
in class AbstractConnector
public String getCookieSpec()
public void setCookieSpec(String cookieSpec)
public boolean isEnableCookies()
public void setEnableCookies(boolean enableCookies)
public HttpConnectionManager getClientConnectionManager()
public void setClientConnectionManager(HttpConnectionManager clientConnectionManager)
protected HttpClient doClientConnect() throws Exception
Exception
protected void setupClientAuthorization(MuleEvent event, HttpMethod httpMethod, HttpClient client, ImmutableEndpoint endpoint) throws UnsupportedEncodingException
UnsupportedEncodingException
public static String normalizeUrl(String url)
public boolean isProxyNtlmAuthentication()
public void setProxyNtlmAuthentication(boolean proxyNtlmAuthentication)
public void connect(EndpointURI endpointURI)
public void disconnect(EndpointURI endpointURI)
public HttpMessageReceiver lookupReceiver(Socket socket, RequestLine requestLine) throws NoReceiverForEndpointException
NoReceiverForEndpointException
@Deprecated public HttpMessageReceiver lookupReceiver(Socket socket, HttpRequest request)
public MessageReceiver lookupReceiver(String key)
lookupReceiver
in class AbstractConnector
public static MessageReceiver findReceiverByStemConsideringMatchingHost(Map<Object,MessageReceiver> receivers, String uri)
public static MessageReceiver findReceiverByStem(Map<Object,MessageReceiver> receivers, String uriStr)
protected ServerSocket getServerSocket(URI uri) throws IOException
getServerSocket
in class TcpConnector
IOException
@Deprecated public boolean isKeepSendSocketOpen()
isKeepSendSocketOpen
in class TcpConnector
@Deprecated public void setKeepSendSocketOpen(boolean keepSendSocketOpen)
setKeepSendSocketOpen
in class TcpConnector
public MessageProcessor createDispatcherMessageProcessor(OutboundEndpoint endpoint) throws MuleException
createDispatcherMessageProcessor
in class AbstractConnector
MuleException
protected MessageDispatcher borrowDispatcher(OutboundEndpoint endpoint) throws MuleException
borrowDispatcher
in class AbstractConnector
MuleException
protected void returnDispatcher(OutboundEndpoint endpoint, MessageDispatcher dispatcher)
returnDispatcher
in class AbstractConnector
public MessageReceiver getReceiver(FlowConstruct flowConstruct, InboundEndpoint endpoint)
getReceiver
in class AbstractConnector
protected void applyDispatcherLifecycle(MessageDispatcher dispatcher) throws MuleException
MuleException
Copyright © 2003–2015 MuleSoft, Inc.. All rights reserved.