org.mule.transport.stdio
Class StdioConnector

java.lang.Object
  extended by org.mule.transport.AbstractConnector
      extended by org.mule.transport.stdio.StdioConnector
All Implemented Interfaces:
EventListener, javax.resource.spi.work.WorkListener, Disposable, Initialisable, Lifecycle, LifecycleStateEnabled, Startable, Stoppable, NameableObject, NamedObject, Connectable, Connector
Direct Known Subclasses:
PromptStdioConnector

public abstract class StdioConnector
extends AbstractConnector

StdioConnector can send and receive Mule events over IO streams.


Field Summary
protected  InputStream inputStream
           
protected  OutputStream outputStream
           
static String STDIO
           
static String STREAM_SYSTEM_ERR
           
static String STREAM_SYSTEM_IN
           
static String STREAM_SYSTEM_OUT
           
 
Fields inherited from class org.mule.transport.AbstractConnector
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
 
Fields inherited from interface org.mule.api.transport.Connector
INT_VALUE_NOT_SET
 
Fields inherited from interface org.mule.api.lifecycle.Disposable
PHASE_NAME
 
Constructor Summary
StdioConnector(MuleContext context)
           
 
Method Summary
 MessageReceiver createReceiver(FlowConstruct flowConstruct, InboundEndpoint endpoint)
          Create a Message receiver for this connector
protected  void doDispose()
          Template method to perform any work when destroying the connectoe
 void doStart()
          Template method to perform any work when starting the connectoe
 void doStop()
          Template method to perform any work when stopping the connectoe
 InputStream getInputStream()
           
 OutputStream getOutputStream()
           
 String getProtocol()
           
 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.
 void setInputStream(InputStream inputStream)
           
 void setOutputStream(OutputStream outputStream)
           
 
Methods inherited from class org.mule.transport.AbstractConnector
clearDispatchers, clearRequesters, configureDispatcherPool, connect, createDefaultRedeliveryPolicy, createDispatcherMessageProcessor, createMuleMessageFactory, createOperationResource, createScheduler, destroyReceiver, disconnect, dispose, disposeReceivers, disposeWorkManagers, doConnect, doDisconnect, doInitialise, doUnregisterListener, fireNotification, getConnectEventId, getConnectionDescription, getDefaultExchangePattern, getDefaultInboundTransformers, getDefaultOutboundTransformers, getDefaultResponseTransformers, getDispatcherFactory, getDispatcherPoolFactory, getDispatcherThreadingProfile, getDispatcherWorkManager, getInboundExchangePatterns, getLifecycleState, getMaxDispatchersActive, getMaxRequestersActive, getMaxTotalDispatchers, getMuleContext, getMuleMessageFactory, getName, getNumberOfConcurrentTransactedReceivers, getOperationResourceFactory, getOutboundExchangePatterns, getOutputStream, getReceiver, getReceiverKey, getReceivers, 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, isResponseEnabled, isStarted, isStarting, isStopped, isStopping, isValidateConnections, lookupReceiver, registerSupportedMetaProtocol, registerSupportedProtocol, registerSupportedProtocolWithoutPrefix, request, request, setConnected, setConnecting, setCreateMultipleTransactedReceivers, setDispatcherFactory, 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
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

STDIO

public static final String STDIO
See Also:
Constant Field Values

STREAM_SYSTEM_IN

public static final String STREAM_SYSTEM_IN
See Also:
Constant Field Values

STREAM_SYSTEM_OUT

public static final String STREAM_SYSTEM_OUT
See Also:
Constant Field Values

STREAM_SYSTEM_ERR

public static final String STREAM_SYSTEM_ERR
See Also:
Constant Field Values

outputStream

protected OutputStream outputStream

inputStream

protected InputStream inputStream
Constructor Detail

StdioConnector

public StdioConnector(MuleContext context)
Method Detail

createReceiver

public MessageReceiver createReceiver(FlowConstruct flowConstruct,
                                      InboundEndpoint endpoint)
                               throws Exception
Description copied from class: AbstractConnector
Create a Message receiver for this connector

Overrides:
createReceiver in class AbstractConnector
Parameters:
flowConstruct - the service that will receive events from this receiver, the listener
endpoint - the endpoint that defies this inbound communication
Returns:
an instance of the message receiver defined in this connectors' TransportServiceDescriptor initialised using the service and endpoint.
Throws:
Exception - if there is a problem creating the receiver. This exception really depends on the underlying transport, thus any exception could be thrown

doStop

public void doStop()
Description copied from class: AbstractConnector
Template method to perform any work when stopping the connectoe

Specified by:
doStop in class AbstractConnector

doDispose

protected void doDispose()
Description copied from class: AbstractConnector
Template method to perform any work when destroying the connectoe

Specified by:
doDispose in class AbstractConnector

doStart

public void doStart()
Description copied from class: AbstractConnector
Template method to perform any work when starting the connectoe

Specified by:
doStart in class AbstractConnector

getProtocol

public String getProtocol()
Returns:
the primary protocol name for endpoints of this connector

getInputStream

public InputStream getInputStream()

setInputStream

public void setInputStream(InputStream inputStream)

getOutputStream

public OutputStream getOutputStream()

setOutputStream

public void setOutputStream(OutputStream outputStream)

registerListener

public void registerListener(InboundEndpoint endpoint,
                             MessageProcessor listener,
                             FlowConstruct flowConstruct)
                      throws Exception
Description copied from interface: Connector
Registers a MessageProcessor listener which will listen to new message received from a specific transport channel and then processed by the endpoint. Only a single listener can be registered for a given endpoints. Attempts to register a listener when one is already registered will fail.

Specified by:
registerListener in interface Connector
Overrides:
registerListener in class AbstractConnector
Parameters:
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.
Throws:
Exception


Copyright © 2003-2012 MuleSoft, Inc.. All Rights Reserved.