You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by ch...@apache.org on 2005/05/06 13:52:40 UTC

svn commit: r168591 - in /webservices/axis/trunk/java/modules/core: src/org/apache/axis/clientapi/ src/org/apache/axis/context/ src/org/apache/axis/description/ src/org/apache/axis/engine/ test/org/apache/axis/context/

Author: chathura
Date: Fri May  6 04:52:38 2005
New Revision: 168591

URL: http://svn.apache.org/viewcvs?rev=168591&view=rev
Log:
Changed the AxisService and added the method findServiceContext method. Further added the global ServiceContext Map to the EngineContext but differed the adding the reference and lookup.

Modified:
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/Call.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/EngineContext.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/MessageContext.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/ServiceContext.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisOperation.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java
    webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/ServiceHandlersChainBuilder.java
    webservices/axis/trunk/java/modules/core/test/org/apache/axis/context/MEPContextTest.java

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/Call.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/Call.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/Call.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/clientapi/Call.java Fri May  6 04:52:38 2005
@@ -137,7 +137,7 @@
                         callbackService.getName().getLocalPart()
                             + "/"
                             + axisOperation.getName().getLocalPart()));
-                axisOperation.findMEPContext(msgctx, false);
+                axisOperation.findOperationContext(msgctx, callbackService.findServiceContext(msgctx), false);
             }
 
             msgctx.setMessageInformationHeaders(messageInfoHeaders);

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/EngineContext.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/EngineContext.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/EngineContext.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/EngineContext.java Fri May  6 04:52:38 2005
@@ -35,7 +35,7 @@
     private EngineConfiguration engineConfig;
     private AxisStorage storage;
 
-    private Map serviceContextMap;
+    
     private Map sessionContextMap;
     private Map moduleContextMap;
     
@@ -44,6 +44,9 @@
      * <code>MEPContext</code> mapping.
      */
     private final Map operationContextMap = new HashMap();
+    
+    
+    private final Map serviceContextMap;
 
 
 
@@ -138,8 +141,7 @@
         this.operationContextMap.put(messageID, mepContext);
     }
     
-    public OperationContext getMEPContext(String messageID){
-        System.out.println(messageID);
+    public OperationContext getOperationContext(String messageID){        
     	return(OperationContext)this.operationContextMap.get(messageID);
     }
      
@@ -147,10 +149,28 @@
     public Map getOperationContextMap(){
     	return this.operationContextMap;
     }
+
+    
+    public void registerServiceContext(String serviceInstanceID, ServiceContext serviceContext){
+    	this.serviceContextMap.put(serviceInstanceID, serviceContext);
+    }
+    
+    public ServiceContext getServiceContext(String serviceInstanceID){
+    	return (ServiceContext)this.serviceContextMap.get(serviceInstanceID);
+    }    
+    
+	/**
+	 * @return Returns the serviceContextMap.
+	 */
+	public Map getServiceContextMap() {
+		return serviceContextMap;
+	}
+
     
     public AxisStorage getStorage() {
         return storage;
     }
+
 
     public void setStorage(AxisStorage storage) {
         this.storage = storage;

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/MessageContext.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/MessageContext.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/MessageContext.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/MessageContext.java Fri May  6 04:52:38 2005
@@ -114,6 +114,8 @@
     private boolean paused = false;
 
     public boolean outPutWritten = false;
+    
+    private String serviceInstanceID;
 
     /**
      * @param initialProperties of the message context, should be null if no properties
@@ -424,5 +426,22 @@
     public void setOutPutWritten(boolean b) {
         outPutWritten = b;
     }
+    
+    /**
+	 * @return Returns the serviceInstanceID.
+	 */
+	public String getServiceInstanceID() {
+		return serviceInstanceID;
+	}
+	/**
+	 * @param serviceInstanceID The serviceInstanceID to set.
+	 */
+	public void setServiceInstanceID(String serviceInstanceID) {
+		this.serviceInstanceID = serviceInstanceID;
+	}
+	
+	public EngineContext getEngineContext(){
+		return engineContext;
+	}
 
 }

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/ServiceContext.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/ServiceContext.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/ServiceContext.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/context/ServiceContext.java Fri May  6 04:52:38 2005
@@ -22,13 +22,30 @@
 
 public class ServiceContext  extends AbstractContext{
     private AxisService serviceConfig;   
+    
+    private String serviceInstanceID;
 
     public ServiceContext(AxisService serviceConfig,EngineContext engineContext) {
         super(engineContext);
         this.serviceConfig = serviceConfig;
+        
 
     }
+    
+    
 
+	/**
+	 * @return Returns the serviceInstanceID.
+	 */
+	public String getServiceInstanceID() {
+		return serviceInstanceID;
+	}
+	/**
+	 * @param serviceInstanceID The serviceInstanceID to set.
+	 */
+	public void setServiceInstanceID(String serviceInstanceID) {
+		this.serviceInstanceID = serviceInstanceID;
+	}
     /**
      * @return
      */

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisOperation.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisOperation.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisOperation.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisOperation.java Fri May  6 04:52:38 2005
@@ -7,6 +7,8 @@
 
 import org.apache.axis.context.MessageContext;
 import org.apache.axis.context.OperationContext;
+import org.apache.axis.context.OperationContextFactory;
+import org.apache.axis.context.ServiceContext;
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.MessageReceiver;
 import org.apache.wsdl.WSDLOperation;
@@ -107,34 +109,34 @@
 	 * @param msgContext
 	 * @return
 	 */
-	public OperationContext findMEPContext(MessageContext msgContext,
-			boolean serverside) throws AxisFault {
+	public OperationContext findOperationContext(MessageContext msgContext,
+			ServiceContext serviceContext, boolean serverside) throws AxisFault {
 		OperationContext operationContext = null;
 
 		if (null == msgContext.getRelatesTo()) {
 			//Its a new incomming message so get the factory to create a new
 			// one
-//			operationContext = OperationContextFactory.createMEPContext(this
-//					.getMessageExchangePattern(), serverside, this, msgContext
-//					.getSessionContext());
+			operationContext = OperationContextFactory.createMEPContext(
+					getMessageExchangePattern(), serverside, this,
+					serviceContext);
 
 		} else {
 			// So this message is part of an ongoing MEP
 			//			operationContext =
-			// msgContext.getEngineContext().getMEPContext(msgContext.getRelatesTo().getValue());
+			msgContext.getEngineContext().getOperationContext(
+					msgContext.getRelatesTo().getValue());
 
 			if (null == operationContext) {
-				throw new AxisFault(
-						"Cannot relate the message in the operation :"
-								+ this.getName()
-								+ " :Unrelated RelatesTO value "
-								+ msgContext.getRelatesTo().getValue());
+				throw new AxisFault("Cannot relate the message in the operation :"
+					+ this.getName()
+					+ " :Unrelated RelatesTO value "
+					+ msgContext.getRelatesTo().getValue());
 			}
 
 		}
 
-		//		msgContext.getEngineContext().addMEPContext(msgContext.getMessageID(),
-		// operationContext);
+		msgContext.getEngineContext().registerOperationContext(
+				msgContext.getMessageID(), operationContext);
 		operationContext.addMessageContext(msgContext);
 		msgContext.setOperationContext(operationContext);
 		if (operationContext.isComplete()) {

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java Fri May  6 04:52:38 2005
@@ -21,348 +21,392 @@
 
 import javax.xml.namespace.QName;
 
+import org.apache.axis.context.MessageContext;
+import org.apache.axis.context.ServiceContext;
 import org.apache.wsdl.WSDLService;
 import org.apache.wsdl.impl.WSDLServiceImpl;
 
 /**
  * Class AxisService
  */
-public class AxisService extends WSDLServiceImpl
-        implements WSDLService, ParameterInclude, FlowInclude,
-        DescriptionConstants {
-    /**
-     * TODO this should be in the WSDLInterface, yet we want it to have in the the
-     * Services, so we put this here for M1 until we foud better way to do that
-     */
-    protected final HashMap operationsMap = new HashMap();
-    
-    /**
-     * Constructor AxisService
-     */
-    public AxisService() {
-        this.setComponentProperty(MODULEREF_KEY, new ArrayList());
-        this.setComponentProperty(PARAMETER_KEY, new ParameterIncludeImpl());
-    }
-
-    /**
-     * Constructor AxisService
-     *
-     * @param qName
-     */
-    public AxisService(QName qName) {
-        this();
-        this.setName(qName);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#addModule(javax.xml.namespace.QName)
-     */
-
-    /**
-     * Method addModule
-     *
-     * @param moduleref
-     */
-    public void addModule(QName moduleref) {
-        if (moduleref == null) {
-            return;
-        }
-        Collection collectionModule =
-                (Collection) this.getComponentProperty(MODULEREF_KEY);
-        collectionModule.add(moduleref);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#getModules()
-     */
-
-    /**
-     * Method getModules
-     *
-     * @return
-     */
-    public Collection getModules() {
-        return (Collection) this.getComponentProperty(MODULEREF_KEY);
-    }
-
-    /**
-     * Method getOperation
-     *
-     * @param operationName
-     * @return
-     */
-    public AxisOperation getOperation(QName operationName) {
-
-        // todo The key has been changed from the qname to the local name because
-        // todo when comparing the namespace will not be available
-        return (AxisOperation) this.operationsMap.get(
-                operationName.getLocalPart());
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#addOperation(org.apache.axis.description.AxisOperation)
-     */
-
-    /**
-     * Method addOperation
-     *
-     * @param operation
-     */
-    public void addOperation(AxisOperation operation) {
-
-        // todo The key has been changed from the qname to the local name because
-        // todo when comparing the namespace will not be available
-        if (operation != null) {
-            this.operationsMap.put(operation.getName().getLocalPart(),
-                    operation);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#setClassLoader(java.lang.ClassLoader)
-     */
-
-    /**
-     * Method setClassLoader
-     *
-     * @param classLoader
-     */
-    public void setClassLoader(ClassLoader classLoader) {
-        if (classLoader != null) {
-            this.setComponentProperty(CLASSLOADER_KEY, classLoader);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#getClassLoader()
-     */
-
-    /**
-     * Method getClassLoader
-     *
-     * @return
-     */
-    public ClassLoader getClassLoader() {
-        return (ClassLoader) this.getComponentProperty(CLASSLOADER_KEY);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#setContextPath(java.lang.String)
-     */
-
-    /**
-     * Method setContextPath
-     *
-     * @param contextPath
-     */
-    public void setContextPath(String contextPath) {
-        if (contextPath != null) {
-            this.setComponentProperty(CONTEXTPATH_KEY, contextPath);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#getContextPath()
-     */
-
-    /**
-     * Method getContextPath
-     *
-     * @return
-     */
-    public String getContextPath() {
-        return (String) this.getComponentProperty(CONTEXTPATH_KEY);
-    }
-
-     /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#setStyle(javax.swing.text.Style)
-     */
-
-    /**
-     * Method setStyle
-     *
-     * @param style
-     */
-    public void setStyle(String style) {
-        if (style != null) {
-            this.setComponentProperty(STYLE_KEY, style);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.AxisService#getStyle()
-     */
-
-    /**
-     * Method getStyle
-     *
-     * @return
-     */
-    public String getStyle() {
-        return (String) this.getComponentProperty(STYLE_KEY);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.PhasesInclude#getPhases(java.util.ArrayList, int)
-     */
-
-  
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.ParameterInclude#addParameter(org.apache.axis.description.Parameter)
-     */
-
-    /**
-     * Method addParameter
-     *
-     * @param param
-     */
-    public void addParameter(Parameter param) {
-        if (param == null) {
-            return;
-        }
-        ParameterIncludeImpl paramInclude =
-                (ParameterIncludeImpl) this.getComponentProperty(PARAMETER_KEY);
-        paramInclude.addParameter(param);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.ParameterInclude#getParameter(java.lang.String)
-     */
-
-    /**
-     * Method getParameter
-     *
-     * @param name
-     * @return
-     */
-    public Parameter getParameter(String name) {
-        ParameterIncludeImpl paramInclude =
-                (ParameterIncludeImpl) this.getComponentProperty(PARAMETER_KEY);
-        return (Parameter) paramInclude.getParameter(name);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#getInFlow()
-     */
-
-    /**
-     * Method getInFlow
-     *
-     * @return
-     */
-    public Flow getInFlow() {
-        return (Flow) this.getComponentProperty(INFLOW_KEY);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#setInFlow(org.apache.axis.description.Flow)
-     */
-
-    /**
-     * Method setInFlow
-     *
-     * @param inFlow
-     */
-    public void setInFlow(Flow inFlow) {
-        if (inFlow != null) {
-            this.setComponentProperty(INFLOW_KEY, inFlow);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#getOutFlow()
-     */
-
-    /**
-     * Method getOutFlow
-     *
-     * @return
-     */
-    public Flow getOutFlow() {
-        return (Flow) this.getComponentProperty(OUTFLOW_KEY);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#setOutFlow(org.apache.axis.description.Flow)
-     */
-
-    /**
-     * Method setOutFlow
-     *
-     * @param outFlow
-     */
-    public void setOutFlow(Flow outFlow) {
-        if (outFlow != null) {
-            this.setComponentProperty(OUTFLOW_KEY, outFlow);
-        }
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#getFaultInFlow()
-     */
-
-    /**
-     * Method getFaultInFlow
-     *
-     * @return
-     */
-    public Flow getFaultInFlow() {
-        return (Flow) this.getComponentProperty(IN_FAULTFLOW_KEY);
-    }
-
-    /*
-     * (non-Javadoc)
-     * @see org.apache.axis.description.FlowInclude#setFaultInFlow(org.apache.axis.description.Flow)
-     */
-
-    /**
-     * Method setFaultInFlow
-     *
-     * @param faultFlow
-     */
-    public void setFaultInFlow(Flow faultFlow) {
-        if (faultFlow != null) {
-            this.setComponentProperty(IN_FAULTFLOW_KEY, faultFlow);
-        }
-    }
-
-    public Flow getFaultOutFlow() {
-       return (Flow) this.getComponentProperty(OUT_FAULTFLOW_KEY); 
-    }
-
-    public void setFaultOutFlow(Flow faultFlow) {
-         if (faultFlow != null) {
-            this.setComponentProperty(OUT_FAULTFLOW_KEY, faultFlow);
-        }
-    }
-
-
-    /**
-     * Method getOperations
-     *
-     * @return
-     */
-    public HashMap getOperations() {
-        return operationsMap;
-    }
-    
-  
-}
+public class AxisService extends WSDLServiceImpl implements WSDLService,
+		ParameterInclude, FlowInclude, DescriptionConstants {
+	/**
+	 * TODO this should be in the WSDLInterface, yet we want it to have in the
+	 * the Services, so we put this here for M1 until we foud better way to do
+	 * that
+	 */
+	protected final HashMap operationsMap = new HashMap();
+
+	/**
+	 * Constructor AxisService
+	 */
+	public AxisService() {
+		this.setComponentProperty(MODULEREF_KEY, new ArrayList());
+		this.setComponentProperty(PARAMETER_KEY, new ParameterIncludeImpl());
+	}
+
+	/**
+	 * Constructor AxisService
+	 * 
+	 * @param qName
+	 */
+	public AxisService(QName qName) {
+		this();
+		this.setName(qName);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#addModule(javax.xml.namespace.QName)
+	 */
+
+	/**
+	 * Method addModule
+	 * 
+	 * @param moduleref
+	 */
+	public void addModule(QName moduleref) {
+		if (moduleref == null) {
+			return;
+		}
+		Collection collectionModule = (Collection) this
+				.getComponentProperty(MODULEREF_KEY);
+		collectionModule.add(moduleref);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#getModules()
+	 */
+
+	/**
+	 * Method getModules
+	 * 
+	 * @return
+	 */
+	public Collection getModules() {
+		return (Collection) this.getComponentProperty(MODULEREF_KEY);
+	}
+
+	/**
+	 * Method getOperation
+	 * 
+	 * @param operationName
+	 * @return
+	 */
+	public AxisOperation getOperation(QName operationName) {
+
+		// todo The key has been changed from the qname to the local name
+		// because
+		// todo when comparing the namespace will not be available
+		return (AxisOperation) this.operationsMap.get(operationName
+				.getLocalPart());
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#addOperation(org.apache.axis.description.AxisOperation)
+	 */
+
+	/**
+	 * Method addOperation
+	 * 
+	 * @param operation
+	 */
+	public void addOperation(AxisOperation operation) {
+
+		// todo The key has been changed from the qname to the local name
+		// because
+		// todo when comparing the namespace will not be available
+		if (operation != null) {
+			this.operationsMap.put(operation.getName().getLocalPart(),
+					operation);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#setClassLoader(java.lang.ClassLoader)
+	 */
+
+	/**
+	 * Method setClassLoader
+	 * 
+	 * @param classLoader
+	 */
+	public void setClassLoader(ClassLoader classLoader) {
+		if (classLoader != null) {
+			this.setComponentProperty(CLASSLOADER_KEY, classLoader);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#getClassLoader()
+	 */
+
+	/**
+	 * Method getClassLoader
+	 * 
+	 * @return
+	 */
+	public ClassLoader getClassLoader() {
+		return (ClassLoader) this.getComponentProperty(CLASSLOADER_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#setContextPath(java.lang.String)
+	 */
+
+	/**
+	 * Method setContextPath
+	 * 
+	 * @param contextPath
+	 */
+	public void setContextPath(String contextPath) {
+		if (contextPath != null) {
+			this.setComponentProperty(CONTEXTPATH_KEY, contextPath);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#getContextPath()
+	 */
+
+	/**
+	 * Method getContextPath
+	 * 
+	 * @return
+	 */
+	public String getContextPath() {
+		return (String) this.getComponentProperty(CONTEXTPATH_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#setStyle(javax.swing.text.Style)
+	 */
+
+	/**
+	 * Method setStyle
+	 * 
+	 * @param style
+	 */
+	public void setStyle(String style) {
+		if (style != null) {
+			this.setComponentProperty(STYLE_KEY, style);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.AxisService#getStyle()
+	 */
+
+	/**
+	 * Method getStyle
+	 * 
+	 * @return
+	 */
+	public String getStyle() {
+		return (String) this.getComponentProperty(STYLE_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.PhasesInclude#getPhases(java.util.ArrayList,
+	 *      int)
+	 */
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.ParameterInclude#addParameter(org.apache.axis.description.Parameter)
+	 */
+
+	/**
+	 * Method addParameter
+	 * 
+	 * @param param
+	 */
+	public void addParameter(Parameter param) {
+		if (param == null) {
+			return;
+		}
+		ParameterIncludeImpl paramInclude = (ParameterIncludeImpl) this
+				.getComponentProperty(PARAMETER_KEY);
+		paramInclude.addParameter(param);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.ParameterInclude#getParameter(java.lang.String)
+	 */
+
+	/**
+	 * Method getParameter
+	 * 
+	 * @param name
+	 * @return
+	 */
+	public Parameter getParameter(String name) {
+		ParameterIncludeImpl paramInclude = (ParameterIncludeImpl) this
+				.getComponentProperty(PARAMETER_KEY);
+		return (Parameter) paramInclude.getParameter(name);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#getInFlow()
+	 */
+
+	/**
+	 * Method getInFlow
+	 * 
+	 * @return
+	 */
+	public Flow getInFlow() {
+		return (Flow) this.getComponentProperty(INFLOW_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#setInFlow(org.apache.axis.description.Flow)
+	 */
+
+	/**
+	 * Method setInFlow
+	 * 
+	 * @param inFlow
+	 */
+	public void setInFlow(Flow inFlow) {
+		if (inFlow != null) {
+			this.setComponentProperty(INFLOW_KEY, inFlow);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#getOutFlow()
+	 */
+
+	/**
+	 * Method getOutFlow
+	 * 
+	 * @return
+	 */
+	public Flow getOutFlow() {
+		return (Flow) this.getComponentProperty(OUTFLOW_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#setOutFlow(org.apache.axis.description.Flow)
+	 */
+
+	/**
+	 * Method setOutFlow
+	 * 
+	 * @param outFlow
+	 */
+	public void setOutFlow(Flow outFlow) {
+		if (outFlow != null) {
+			this.setComponentProperty(OUTFLOW_KEY, outFlow);
+		}
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#getFaultInFlow()
+	 */
+
+	/**
+	 * Method getFaultInFlow
+	 * 
+	 * @return
+	 */
+	public Flow getFaultInFlow() {
+		return (Flow) this.getComponentProperty(IN_FAULTFLOW_KEY);
+	}
+
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.apache.axis.description.FlowInclude#setFaultInFlow(org.apache.axis.description.Flow)
+	 */
+
+	/**
+	 * Method setFaultInFlow
+	 * 
+	 * @param faultFlow
+	 */
+	public void setFaultInFlow(Flow faultFlow) {
+		if (faultFlow != null) {
+			this.setComponentProperty(IN_FAULTFLOW_KEY, faultFlow);
+		}
+	}
+
+	public Flow getFaultOutFlow() {
+		return (Flow) this.getComponentProperty(OUT_FAULTFLOW_KEY);
+	}
+
+	public void setFaultOutFlow(Flow faultFlow) {
+		if (faultFlow != null) {
+			this.setComponentProperty(OUT_FAULTFLOW_KEY, faultFlow);
+		}
+	}
+
+	/**
+	 * Method getOperations
+	 * 
+	 * @return
+	 */
+	public HashMap getOperations() {
+		return operationsMap;
+	}
+
+	/**
+	 * This finds the ServiceContext provided that the incomming message that
+	 * has have some serviceInstanceID. Currently this will not be added to the
+	 * EngineContext's ServiceContextMap.
+	 * 
+	 * @param msgContext
+	 * @return
+	 */
+	public ServiceContext findServiceContext(MessageContext msgContext) {
+		ServiceContext serviceContext = null;
+		if (null == msgContext.getServiceInstanceID()) {
+			serviceContext = new ServiceContext(this, msgContext
+					.getEngineContext());
+			//TODO
+			//			msgContext.getEngineContext().registerServiceContext(serviceContext.getServiceInstanceID(),
+			// serviceContext);
+		} else {
+			serviceContext = (ServiceContext) msgContext.getEngineContext()
+					.getServiceContext(msgContext.getServiceInstanceID());
+		}
+		
+		return serviceContext;
+
+	}
+
+}
\ No newline at end of file

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/ServiceHandlersChainBuilder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/ServiceHandlersChainBuilder.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/ServiceHandlersChainBuilder.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/ServiceHandlersChainBuilder.java Fri May  6 04:52:38 2005
@@ -34,7 +34,9 @@
     public void invoke(MessageContext msgContext) throws AxisFault {
         if(msgContext.getOperationContext() != null){
             AxisOperation axisOp = msgContext.getOperationContext().getAxisOperation();
-            msgContext.setOperationContext(axisOp.findMEPContext(msgContext,msgContext.isServerSide()));
+            //TODO FIXME Srinath
+            throw new UnsupportedOperationException();
+//            msgContext.setOperationContext(axisOp.findOperationContext(msgContext, msgContext.get,msgContext.isServerSide()));
         }
         
         ServiceContext serviceContext = msgContext.getOperationContext().getServiceContext();

Modified: webservices/axis/trunk/java/modules/core/test/org/apache/axis/context/MEPContextTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/test/org/apache/axis/context/MEPContextTest.java?rev=168591&r1=168590&r2=168591&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/test/org/apache/axis/context/MEPContextTest.java (original)
+++ webservices/axis/trunk/java/modules/core/test/org/apache/axis/context/MEPContextTest.java Fri May  6 04:52:38 2005
@@ -21,6 +21,7 @@
 import org.apache.axis.AbstractTestCase;
 import org.apache.axis.addressing.miheaders.RelatesTo;
 import org.apache.axis.description.AxisOperation;
+import org.apache.axis.description.AxisService;
 import org.apache.axis.description.AxisTransportIn;
 import org.apache.axis.description.AxisTransportOut;
 import org.apache.axis.engine.AxisFault;
@@ -36,23 +37,27 @@
     public MEPContextTest(String arg0) {
         super(arg0);
     }
-    
+    //FIXME TODO Chathura
     public void testMEPfindingOnRelatesTO() throws Exception{
-    	MessageContext messageContext1 = this.getBasicMessageContext();
+    	 
+    	ServiceContext sessionContext = new ServiceContext(new AxisService(),new EngineContext(null));
+		MessageContext messageContext1 = this.getBasicMessageContext();
     	
     	messageContext1.setMessageID(new Long(System.currentTimeMillis()).toString());
     	AxisOperation axisOperation = new AxisOperation(new QName("test"));
-    	OperationContext operationContext1 = axisOperation.findMEPContext(messageContext1, true);
+    	OperationContext operationContext1 = axisOperation.findOperationContext(messageContext1, sessionContext, true);
     	
     	MessageContext messageContext2 = this.getBasicMessageContext();
     	messageContext2.setMessageID(new Long(System.currentTimeMillis()).toString());
     	messageContext2.getMessageInformationHeaders().setRelatesTo(new RelatesTo(messageContext1.getMessageID()));
-    	OperationContext operationContext2 = axisOperation.findMEPContext(messageContext2, true);
+    	OperationContext operationContext2 = axisOperation.findOperationContext(messageContext2, sessionContext,  true);
     	assertEquals(operationContext1, operationContext2);
     }
     
     public MessageContext getBasicMessageContext() throws AxisFault{
-    	return new MessageContext( new SessionContext(null) ,new AxisTransportIn(new QName("axis")), new AxisTransportOut(new QName("axis")));
+
+    	return new MessageContext(null ,new AxisTransportIn(new QName("axis")), new AxisTransportOut(new QName("axis")));
+
     }
     
 }