org.apache.synapse.endpoints.dispatch
Class DispatcherContext

java.lang.Object
  extended by org.apache.synapse.endpoints.dispatch.DispatcherContext

public class DispatcherContext
extends Object

Keeps the states of the dispatcher . This hides where those states are kept . For a cluster environment , all states are kept in the axis2 configuration context in order to replicate those states so that other synapse instance in the same cluster can see those changes . This class can be evolved to keep any run time states related to the endpoint . For a non-clustered environment , all data are kept locally.

This class provide the abstraction need to separate the dynamic data from the static data and improve the high cohesion and provides capability to replicate only required state at a given time. This improves the performance when replicate data.


Constructor Summary
DispatcherContext()
           
 
Method Summary
 ConfigurationContext getConfigurationContext()
          Get the configuration context instance .
 Endpoint getEndpoint(String sessionID)
          return the endpoint for the given session.
protected  void handleException(String msg)
          Helper methods for handle errors.
protected  void handleException(String msg, Exception e)
          Helper methods for handle errors.
 boolean isClusteringEnable()
          Returns whether clustering is enable or not
 void removeSession(String id)
          Removes the endpoint for the given session.
 void setConfigurationContext(ConfigurationContext configCtx)
          Sets the ConfigurationContext instance .
 void setContextID(String contextID)
          Sets the identifier for this dispatcher context , so that , this can be identified uniquely across the cluster.
 void setEndpoint(String sessionID, Endpoint endpoint)
          Sets the given endpoint mapping with given the session id.
 void setEndpoints(List<Endpoint> endpoints)
          Sets the defined child endpoints
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DispatcherContext

public DispatcherContext()
Method Detail

getEndpoint

public Endpoint getEndpoint(String sessionID)
return the endpoint for the given session. Null will be returned , if there is no endpoint for given session.

Parameters:
sessionID - The session identifier
Returns:
Returns the endpoint for the given session.

setEndpoint

public void setEndpoint(String sessionID,
                        Endpoint endpoint)
Sets the given endpoint mapping with given the session id.

Parameters:
sessionID - The session identifier
endpoint - The endpoint

removeSession

public void removeSession(String id)
Removes the endpoint for the given session.

Parameters:
id - The session identifier

getConfigurationContext

public ConfigurationContext getConfigurationContext()
Get the configuration context instance . This is only available for cluster env.

Returns:
Returns the ConfigurationContext instance

setConfigurationContext

public void setConfigurationContext(ConfigurationContext configCtx)
Sets the ConfigurationContext instance . This is only used for cluster env. By setting this , indicates that this is a cluster env.

Parameters:
configCtx - The ConfigurationContext instance

setContextID

public void setContextID(String contextID)
Sets the identifier for this dispatcher context , so that , this can be identified uniquely across the cluster. The id will be the name of the endpoint

Parameters:
contextID - The Id for this dispatcher context

handleException

protected void handleException(String msg)
Helper methods for handle errors.

Parameters:
msg - The error message

handleException

protected void handleException(String msg,
                               Exception e)
Helper methods for handle errors.

Parameters:
msg - The error message
e - The exception

isClusteringEnable

public boolean isClusteringEnable()
Returns whether clustering is enable or not

Returns:
True - enable , false -> this is not a cluster env.

setEndpoints

public void setEndpoints(List<Endpoint> endpoints)
Sets the defined child endpoints

Parameters:
endpoints - The endpoint list


Copyright © 2005-2008 Apache Software Foundation. All Rights Reserved.