org.mule.api
Interface MuleSession

All Superinterfaces:
Serializable
All Known Implementing Classes:
DefaultMuleSession

public interface MuleSession
extends Serializable

MuleSession is the context in which a request is executed. The session manages the marshalling of events to and from components This object is not usually referenced by client code directly. If needed Components should manage events via the MuleEventContext which is obtainable via the UMOManager or by implementing org.mule.api.lifecycle.Callable.


Method Summary
 MuleEvent createOutboundEvent(MuleMessage message, OutboundEndpoint endpoint, MuleEvent previousEvent)
          Creates an outbound event for this session
 void dispatchEvent(MuleEvent event)
          Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event
 void dispatchEvent(MuleMessage message)
          This will dispatch an event asynchronously via the configured outbound endpoint on the service for this session
 void dispatchEvent(MuleMessage message, OutboundEndpoint endpoint)
          Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event
 void dispatchEvent(MuleMessage message, String endpointName)
          Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event
 String getId()
          Returns the unique id for this session
 Object getProperty(Object key)
          Will retrieve a session level property.
 Iterator getPropertyNames()
          Returns an iterater of property keys for the session properties on this session
 SecurityContext getSecurityContext()
          The security context for this session.
 Service getService()
          Returns the Service associated with the session in its current execution
 boolean isValid()
          Determines if this session is valid.
 Object removeProperty(Object key)
          Will retrieve a session level property and remove it from the session
 MuleMessage requestEvent(InboundEndpoint endpoint, long timeout)
          Requests a synchronous receive of an event on the service
 MuleMessage requestEvent(String endpointName, long timeout)
          Requests a synchronous receive of an event on the service
 MuleMessage sendEvent(MuleEvent event)
          Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event
 MuleMessage sendEvent(MuleMessage message)
          This will send an event via the configured outbound endpoint on the service for this session
 MuleMessage sendEvent(MuleMessage message, OutboundEndpoint endpoint)
          Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event
 MuleMessage sendEvent(MuleMessage message, String endpointName)
          Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event
 void setProperty(Object key, Object value)
          Will set a session level property.
 void setSecurityContext(SecurityContext context)
          The security context for this session.
 void setValid(boolean value)
          Determines if this session is valid.
 

Method Detail

getService

Service getService()
Returns the Service associated with the session in its current execution

Returns:
the Service associated with the session in its current execution
See Also:
Service

sendEvent

MuleMessage sendEvent(MuleMessage message)
                      throws MuleException
This will send an event via the configured outbound endpoint on the service for this session

Parameters:
message - the message to send
Returns:
the result of the send if any
Throws:
MuleException - if there is no outbound endpoint configured on the service or the events fails during dispatch

sendEvent

MuleMessage sendEvent(MuleEvent event)
                      throws MuleException
Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
event - the event to process
Returns:
the return Message from the call or null if there was no result
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

sendEvent

MuleMessage sendEvent(MuleMessage message,
                      OutboundEndpoint endpoint)
                      throws MuleException
Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
message - the event message payload to send
endpoint - The endpoint to disptch the event through
Returns:
the return Message from the call or null if there was no result
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

sendEvent

MuleMessage sendEvent(MuleMessage message,
                      String endpointName)
                      throws MuleException
Depending on the session state this methods either Passes an event synchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
message - the event message payload to send
endpointName - The endpoint name to disptch the event through. This will be looked up first on the service configuration and then on the mule manager configuration
Returns:
the return Message from the call or null if there was no result
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

dispatchEvent

void dispatchEvent(MuleMessage message)
                   throws MuleException
This will dispatch an event asynchronously via the configured outbound endpoint on the service for this session

Parameters:
message - the message to send
Throws:
MuleException - if there is no outbound endpoint configured on the service or the events fails during dispatch

dispatchEvent

void dispatchEvent(MuleEvent event)
                   throws MuleException
Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
event - the event message payload to send first on the service configuration and then on the mule manager configuration
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

dispatchEvent

void dispatchEvent(MuleMessage message,
                   OutboundEndpoint endpoint)
                   throws MuleException
Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
message - the event message payload to send
endpoint - The endpoint name to disptch the event through
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

dispatchEvent

void dispatchEvent(MuleMessage message,
                   String endpointName)
                   throws MuleException
Depending on the session state this methods either Passes an event asynchronously to the next available Mule component in the pool or via the endpoint configured for the event

Parameters:
message - the event message payload to send
endpointName - The endpoint name to disptch the event through. This will be looked up first on the service configuration and then on the mule manager configuration
Throws:
MuleException - if the event fails to be processed by the service or the transport for the endpoint

requestEvent

MuleMessage requestEvent(InboundEndpoint endpoint,
                         long timeout)
                         throws MuleException
Requests a synchronous receive of an event on the service

Parameters:
endpoint - the endpoint identifing the endpointUri on ewhich the event will be received
timeout - time in milliseconds before the request timesout
Returns:
The requested event or null if the request times out
Throws:
MuleException - if the request operation fails

requestEvent

MuleMessage requestEvent(String endpointName,
                         long timeout)
                         throws MuleException
Requests a synchronous receive of an event on the service

Parameters:
endpointName - the endpoint name identifing the endpointUri on ewhich the event will be received
timeout - time in milliseconds before the request timesout
Returns:
The requested event or null if the request times out
Throws:
MuleException - if the request operation fails

isValid

boolean isValid()
Determines if this session is valid. A session becomes invalid if an exception occurs while processing

Returns:
true if the service is functioning properly, false otherwise

setValid

void setValid(boolean value)
Determines if this session is valid. A session becomes invalid if an exception occurs while processing

Parameters:
value - true if the service is functioning properly, false otherwise

createOutboundEvent

MuleEvent createOutboundEvent(MuleMessage message,
                              OutboundEndpoint endpoint,
                              MuleEvent previousEvent)
                              throws MuleException
Creates an outbound event for this session

Parameters:
message - the event messgae payload
endpoint - the endpoint to send/dispatch through
previousEvent - the previous event (if any) on this session
Returns:
the event to send/dispatch
Throws:
MuleException - if the evnet cannot be created

getId

String getId()
Returns the unique id for this session

Returns:
the unique id for this session

setSecurityContext

void setSecurityContext(SecurityContext context)
The security context for this session. If not null outbound, inbound and/or method invocations will be authenticated using this context

Parameters:
context - the context for this session or null if the request is not secure.

getSecurityContext

SecurityContext getSecurityContext()
The security context for this session. If not null outbound, inbound and/or method invocations will be authenticated using this context

Returns:
the context for this session or null if the request is not secure.

setProperty

void setProperty(Object key,
                 Object value)
Will set a session level property. These will either be stored and retrieved using the underlying transport mechanism of stored using a default mechanism

Parameters:
key - the key for the object data being stored on the session
value - the value of the session data

getProperty

Object getProperty(Object key)
Will retrieve a session level property.

Parameters:
key - the key for the object data being stored on the session
Returns:
the value of the session data or null if the property does not exist

removeProperty

Object removeProperty(Object key)
Will retrieve a session level property and remove it from the session

Parameters:
key - the key for the object data being stored on the session
Returns:
the value of the session data or null if the property does not exist

getPropertyNames

Iterator getPropertyNames()
Returns an iterater of property keys for the session properties on this session

Returns:
an iterater of property keys for the session properties on this session


Copyright © 2003-2009 MuleSource, Inc.. All Rights Reserved.