org.mule.umo.endpoint
Interface UMOImmutableEndpoint

All Superinterfaces:
java.lang.Cloneable, Initialisable, java.io.Serializable
All Known Subinterfaces:
UMOEndpoint
All Known Implementing Classes:
ImmutableMuleEndpoint, MuleEndpoint

public interface UMOImmutableEndpoint
extends java.io.Serializable, java.lang.Cloneable, Initialisable

UMOImmutableEndpoint describes a Message endpoint where data is sent or recieved. An Enpoint is an Resource address (EndpointUri), with associated transformation, transaction and filtering rules.

Version:
$Revision: 1.6 $
Author:
Ross Mason

Field Summary
static java.lang.String ENDPOINT_TYPE_RECEIVER
          The endpoint is indound
static java.lang.String ENDPOINT_TYPE_RESPONSE
          The endpoint is a receive endpoint set on a response router
static java.lang.String ENDPOINT_TYPE_SENDER
          The endpoint is outbound
static java.lang.String ENDPOINT_TYPE_SENDER_AND_RECEIVER
          The endpoint is either and will be set depending on how it is used
 
Method Summary
 boolean canReceive()
          Determines whether this endpoint can be used to receive events
 boolean canSend()
          Determines whether this endpoint can be used to send events
 java.lang.Object clone()
          Make a deep copy of this endpoint
 UMOConnector getConnector()
          The endpoint that will be used to send the message on.
 int getCreateConnector()
           
 UMOEndpointURI getEndpointURI()
          This specifes the communication endpointUri.
 UMOFilter getFilter()
          The filter to apply to incoming messages.
 java.lang.String getName()
          The name is the identifier for the endpoint
 java.util.Map getProperties()
          Returns any properties set on this endpoint
 java.lang.String getProtocol()
          The transport protocol name that the message endpoint communicates over.
 UMOEndpointSecurityFilter getSecurityFilter()
          Returns an UMOEndpointSecurityFilter for this endpoint.
 UMOTransactionConfig getTransactionConfig()
          Returns the transaction configuration for this endpoint
 UMOTransformer getTransformer()
          The transformer is responsible for transforming data when it is received or sent by the UMO (depending on whether this endpoint is a receiver or not).
 java.lang.String getType()
          Determines whether the message endpoint is a sender or receiver or both.
 boolean isDeleteUnacceptedMessages()
          If a filter is configured on this endpoint, this property will determine if message that are not excepted by the filter are deleted
 boolean isReadOnly()
           
 boolean isSynchronous()
          Determines if requests originating from this endpoint should be synchronous i.e.
 
Methods inherited from interface org.mule.umo.lifecycle.Initialisable
initialise
 

Field Detail

ENDPOINT_TYPE_SENDER

public static final java.lang.String ENDPOINT_TYPE_SENDER
The endpoint is outbound

See Also:
Constant Field Values

ENDPOINT_TYPE_RECEIVER

public static final java.lang.String ENDPOINT_TYPE_RECEIVER
The endpoint is indound

See Also:
Constant Field Values

ENDPOINT_TYPE_SENDER_AND_RECEIVER

public static final java.lang.String ENDPOINT_TYPE_SENDER_AND_RECEIVER
The endpoint is either and will be set depending on how it is used

See Also:
Constant Field Values

ENDPOINT_TYPE_RESPONSE

public static final java.lang.String ENDPOINT_TYPE_RESPONSE
The endpoint is a receive endpoint set on a response router

See Also:
Constant Field Values
Method Detail

getEndpointURI

public UMOEndpointURI getEndpointURI()
This specifes the communication endpointUri. This will have a different format depending on the transport protocol being used i.e.

if an endpointUri is not specifed it will be assumed that it will be determined at run-time by the calling application. The endpointUri can be aliteral endpointUri such as an email address or it can be a logical name for an endpointUri as long as it is declared in a message-endpointUri block. When the message-provider is created the endpointUri is first lookup in the endpointUri registry and if nothing is returned the endpointUri value itself is used.

Returns:
the endpointUri on which the endpoint sends or receives data

getType

public java.lang.String getType()
Determines whether the message endpoint is a sender or receiver or both. The possible values are- The default is 'senderAndReceiver'.

Returns:
the endpoint type

getConnector

public UMOConnector getConnector()
The endpoint that will be used to send the message on. It is important that the endpointUri and the connection correlate i.e. if your endpointUri is a jms queue your connection must be a JMS endpoint.

Returns:
the endpoint associated with the endpoint

getName

public java.lang.String getName()
The name is the identifier for the endpoint

Returns:
the endpoint name

getTransformer

public UMOTransformer getTransformer()
The transformer is responsible for transforming data when it is received or sent by the UMO (depending on whether this endpoint is a receiver or not). A tranformation for an inbound event can be forced by the user by calling the inbound event.getTransformedMessage(). A tranformation for an outbound event is called or when the UMO dispatchEvent() or sendEvent() methods are called.

This attribute represents the name of the transformer to use as declared in the transformers section of the configuration file. IF a name for the transformer is not set on the configuration element, it will default to the name of the className attribute minus the package name.

Returns:
the transformer to use when receiving or sending data

getProperties

public java.util.Map getProperties()
Returns any properties set on this endpoint

Returns:
a map of properties for this endpoint

getProtocol

public java.lang.String getProtocol()
The transport protocol name that the message endpoint communicates over. i.e. jms, sms, smtp etc. The protocol must match that of the associated endpoint

Returns:
the protocol name

isReadOnly

public boolean isReadOnly()
Returns:
true if this endpoint is read-only and none of it's properties can change. Global endpoints should be read-only so that unexpected behaviour is avoided.

canSend

public boolean canSend()
Determines whether this endpoint can be used to send events

Returns:
true if it has been configured to send events, false otherwise

canReceive

public boolean canReceive()
Determines whether this endpoint can be used to receive events

Returns:
true if it has been configured to receive events, false otherwise

getTransactionConfig

public UMOTransactionConfig getTransactionConfig()
Returns the transaction configuration for this endpoint

Returns:
the transaction configuration for this endpoint or null if the endpoint is not transactional

clone

public java.lang.Object clone()
Make a deep copy of this endpoint

Returns:
a copy of the endpoint

getFilter

public UMOFilter getFilter()
The filter to apply to incoming messages. Only applies when the endpoint endpointUri is a receiver

Returns:
the UMOFilter to use or null if one is not set

isDeleteUnacceptedMessages

public boolean isDeleteUnacceptedMessages()
If a filter is configured on this endpoint, this property will determine if message that are not excepted by the filter are deleted

Returns:
true if message should be deleted, false otherwise

getSecurityFilter

public UMOEndpointSecurityFilter getSecurityFilter()
Returns an UMOEndpointSecurityFilter for this endpoint. If one is not set, there will be no authentication on events sent via this endpoint

Returns:
UMOEndpointSecurityFilter responsible for authenticating message flow via this endpoint.
See Also:
UMOEndpointSecurityFilter

isSynchronous

public boolean isSynchronous()
Determines if requests originating from this endpoint should be synchronous i.e. execute in a single thread and possibly return an result. This property is only used when the endpoint is of type 'receiver'

Returns:
whether requests on this endpoint should execute in a single thread. This property is only used when the endpoint is of type 'receiver'

getCreateConnector

public int getCreateConnector()


Copyright © 2003-2005 SymphonySoft Limited. All Rights Reserved.