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 de...@apache.org on 2005/03/18 06:12:02 UTC

svn commit: r158023 - in webservices/axis/trunk/java/modules: core/src/java/org/apache/axis/description/ core/src/java/org/apache/axis/engine/ core/src/java/org/apache/axis/phaseresolver/ deployment/src/java/org/apache/axis/deployment/ deployment/src/java/org/apache/axis/deployment/listener/ deployment/src/java/org/apache/axis/deployment/repository/utill/ deployment/src/java/org/apache/axis/deployment/scheduler/ deployment/src/samples/deployment/OutService/ deployment/src/test-resources/deployment/ deployment/src/test/org/apache/axis/deployment/

Author: deepal
Date: Thu Mar 17 21:11:55 2005
New Revision: 158023

URL: http://svn.apache.org/viewcvs?view=rev&rev=158023
Log:
added TransportIn and TransportOut
then user can sepcify that in server.xml
wt sender ,  reciever shoud be used

Modified:
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportIn.java
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportOut.java
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistry.java
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistryImpl.java
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseHolder.java
    webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseResolver.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentConstants.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentEngine.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentException.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentParser.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/EngineRegistryFactoryImpl.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListener.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListenerImpl.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/HDFileItem.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/UnZipJAR.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfo.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfoList.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/DeploymentIterator.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/ScheduleIterator.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/Scheduler.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/SchedulerTask.java
    webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/server.xml
    webservices/axis/trunk/java/modules/deployment/src/samples/deployment/OutService/build.xml
    webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server-transport.xml
    webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server.xml
    webservices/axis/trunk/java/modules/deployment/src/test/org/apache/axis/deployment/TransportDeploymentTest.java

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportIn.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportIn.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportIn.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportIn.java Thu Mar 17 21:11:55 2005
@@ -1,18 +1,18 @@
 /*
- * Copyright 2004,2005 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*      http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
 package org.apache.axis.description;
 
 import java.util.ArrayList;
@@ -40,16 +40,21 @@
     /**
      * Field flowInclude
      */
-    private Flow outFlow;
+    private Flow inFlow;
+    /**
+     * Field flowInclude
+     */
+    private Flow faultFlow;
+
 
     /**
      * Field name
      */
     protected QName name;
-    
-    
+
+
     protected TransportReceiver sender;
-    
+
     /**
      * Constructor AxisTransport
      *
@@ -110,5 +115,21 @@
      */
     public void setName(QName name) {
         this.name = name;
+    }
+
+    public Flow getInFlow() {
+        return inFlow;
+    }
+
+    public void setInFlow(Flow inFlow) {
+        this.inFlow = inFlow;
+    }
+
+    public Flow getFaultFlow() {
+        return faultFlow;
+    }
+
+    public void setFaultFlow(Flow faultFlow) {
+        this.faultFlow = faultFlow;
     }
 }

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportOut.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportOut.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportOut.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/description/AxisTransportOut.java Thu Mar 17 21:11:55 2005
@@ -43,6 +43,13 @@
     private Flow outFlow;
 
     /**
+     * Field flowInclude
+     */
+    private Flow faultFlow;
+
+
+
+    /**
      * Field name
      */
     protected QName name;
@@ -126,6 +133,22 @@
      */
     public void setSender(TransportSender sender) {
         this.sender = sender;
+    }
+
+    public Flow getOutFlow() {
+        return outFlow;
+    }
+
+    public void setOutFlow(Flow outFlow) {
+        this.outFlow = outFlow;
+    }
+
+    public Flow getFaultFlow() {
+        return faultFlow;
+    }
+
+    public void setFaultFlow(Flow faultFlow) {
+        this.faultFlow = faultFlow;
     }
 
 }

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistry.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistry.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistry.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistry.java Thu Mar 17 21:11:55 2005
@@ -21,10 +21,7 @@
 
 import javax.xml.namespace.QName;
 
-import org.apache.axis.description.AxisGlobal;
-import org.apache.axis.description.AxisModule;
-import org.apache.axis.description.AxisService;
-import org.apache.axis.description.AxisTransport;
+import org.apache.axis.description.*;
 
 /**
  * The palce where all the Global states of Axis is kept.
@@ -138,4 +135,13 @@
     public HashMap getServices();
 
     public Hashtable getFaulytServices();
+
+
+    public AxisTransportIn getTransportIn(QName name) throws AxisFault ;
+    public  void addTransport(AxisTransportIn transport) throws AxisFault;
+    public AxisTransportOut getTransportOut(QName name) throws AxisFault ;
+    public  void addTransportOut(AxisTransportOut transport) throws AxisFault ;
+    public HashMap getTransportsIn();
+    public HashMap getTransportsOut();
+
 }

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistryImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistryImpl.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistryImpl.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/engine/EngineRegistryImpl.java Thu Mar 17 21:11:55 2005
@@ -187,10 +187,10 @@
      */
     public synchronized void addTransport(AxisTransportIn transport)
             throws AxisFault {
-        transports.put(transport.getName(), transport);
+        transportsIn.put(transport.getName(), transport);
     }
     public AxisTransportOut getTransportOut(QName name) throws AxisFault {
-        return (AxisTransportOut) transports.get(name);
+        return (AxisTransportOut) transportsOut.get(name);
     }
 
     /**
@@ -201,7 +201,15 @@
      */
     public synchronized void addTransportOut(AxisTransportOut transport)
             throws AxisFault {
-        transports.put(transport.getName(), transport);
+        transportsOut.put(transport.getName(), transport);
+    }
+
+    public HashMap getTransportsIn() {
+        return transports;
+    }
+
+    public HashMap getTransportsOut() {
+        return transportsOut;
     }
 
     /**

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseHolder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseHolder.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseHolder.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseHolder.java Thu Mar 17 21:11:55 2005
@@ -15,10 +15,7 @@
 */
 package org.apache.axis.phaseresolver;
 
-import org.apache.axis.description.AxisGlobal;
-import org.apache.axis.description.AxisService;
-import org.apache.axis.description.AxisTransport;
-import org.apache.axis.description.HandlerMetadata;
+import org.apache.axis.description.*;
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.EngineRegistry;
 import org.apache.axis.engine.Handler;
@@ -268,6 +265,115 @@
                             faultChain.add(axisPhase);
                         }
                         service.setPhases(faultChain, EngineRegistry.FAULTFLOW);
+                        break;
+                    }
+            }
+        } catch (AxisFault e) {
+            throw new PhaseException(e);
+        }
+    }
+
+
+    public void buildTransportChain(PhasesInclude trnsport, int chainType)
+            throws PhaseException {
+        try {
+            OrderThePhases();
+
+            HandlerMetadata[] handlers;
+            Class handlerClass = null;
+            Handler handler;
+            switch (chainType) {
+                case 1:
+                    {
+                        ArrayList inChain = new ArrayList();
+                        for (int i = 0; i < phaseholder.size(); i++) {
+                            PhaseMetadata phase =
+                                    (PhaseMetadata) phaseholder.get(i);
+                            Phase axisPhase = new Phase(phase.getName());
+                            handlers = phase.getOrderedHandlers();
+                            for (int j = 0; j < handlers.length; j++) {
+                                try {
+                                    handlerClass = Class.forName(
+                                            handlers[j].getClassName(), true,
+                                            Thread.currentThread().getContextClassLoader());
+                                    handler =
+                                            (Handler) handlerClass.newInstance();
+                                    handler.init(handlers[j]);
+                                    handlers[j].setHandler(handler);
+                                    axisPhase.addHandler(handlers[j].getHandler());
+                                } catch (ClassNotFoundException e) {
+                                    throw new PhaseException(e);
+                                } catch (IllegalAccessException e) {
+                                    throw new PhaseException(e);
+                                } catch (InstantiationException e) {
+                                    throw new PhaseException(e);
+                                }
+                            }
+                            inChain.add(axisPhase);
+                        }
+                        trnsport.setPhases(inChain, EngineRegistry.INFLOW);
+                        break;
+                    }
+                case 2:
+                    {
+                        ArrayList outChain = new ArrayList();
+                        for (int i = 0; i < phaseholder.size(); i++) {
+                            PhaseMetadata phase =
+                                    (PhaseMetadata) phaseholder.get(i);
+                            Phase axisPhase = new Phase(phase.getName());
+                            handlers = phase.getOrderedHandlers();
+                            for (int j = 0; j < handlers.length; j++) {
+                                try {
+                                    handlerClass = Class.forName(
+                                            handlers[j].getClassName(), true,
+                                            Thread.currentThread().getContextClassLoader());
+                                    handler =
+                                            (Handler) handlerClass.newInstance();
+                                    handler.init(handlers[j]);
+                                    handlers[j].setHandler(handler);
+                                    axisPhase.addHandler(handlers[j].getHandler());
+                                } catch (ClassNotFoundException e) {
+                                    throw new PhaseException(e);
+                                } catch (IllegalAccessException e) {
+                                    throw new PhaseException(e);
+                                } catch (InstantiationException e) {
+                                    throw new PhaseException(e);
+                                }
+                            }
+                            outChain.add(axisPhase);
+                        }
+                        trnsport.setPhases(outChain, EngineRegistry.OUTFLOW);
+                        break;
+                    }
+                case 3:
+                    {
+                        ArrayList faultChain = new ArrayList();
+                        for (int i = 0; i < phaseholder.size(); i++) {
+                            PhaseMetadata phase =
+                                    (PhaseMetadata) phaseholder.get(i);
+                            Phase axisPhase = new Phase(phase.getName());
+                            handlers = phase.getOrderedHandlers();
+                            for (int j = 0; j < handlers.length; j++) {
+                                try {
+                                    handlerClass = Class.forName(
+                                            handlers[j].getClassName(), true,
+                                            Thread.currentThread().getContextClassLoader());
+                                    handler =
+                                            (Handler) handlerClass.newInstance();
+                                    handler.init(handlers[j]);
+                                    handlers[j].setHandler(handler);
+                                    axisPhase.addHandler(handlers[j].getHandler());
+                                } catch (ClassNotFoundException e) {
+                                    throw new PhaseException(e);
+                                } catch (IllegalAccessException e) {
+                                    throw new PhaseException(e);
+                                } catch (InstantiationException e) {
+                                    throw new PhaseException(e);
+                                }
+                            }
+                            faultChain.add(axisPhase);
+                        }
+                        trnsport.setPhases(faultChain, EngineRegistry.FAULTFLOW);
                         break;
                     }
             }

Modified: webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseResolver.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseResolver.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseResolver.java (original)
+++ webservices/axis/trunk/java/modules/core/src/java/org/apache/axis/phaseresolver/PhaseResolver.java Thu Mar 17 21:11:55 2005
@@ -1,26 +1,21 @@
 /*
- * Copyright 2004,2005 The Apache Software Foundation.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*      http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
 package org.apache.axis.phaseresolver;
 
-import org.apache.axis.description.AxisGlobal;
-import org.apache.axis.description.AxisModule;
-import org.apache.axis.description.AxisService;
-import org.apache.axis.description.AxisTransport;
-import org.apache.axis.description.Flow;
-import org.apache.axis.description.HandlerMetadata;
+import org.apache.axis.description.*;
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.EngineRegistry;
 
@@ -105,34 +100,34 @@
         Flow flow = null;
 
         /*
-         * //adding server specific handlers  . global
-         * for(int intA=0 ; intA < count; intA ++){
-         * moduleName = server.getModule(intA);
-         * module = engineRegistry.getModule(moduleName);
-         * switch (flowtype){
-         * case 1 : {
-         * flow = module.getInFlow();
-         * break;
-         * }
-         * case  2 : {
-         * flow = module.getOutFlow();
-         * break;
-         * }
-         * case 3 : {
-         * flow = module.getFaultFlow();
-         * break;
-         * }
-         * }
-         * for(int j= 0 ; j < flow.getHandlerCount() ; j++ ){
-         * HandlerMetaData metadata = flow.getHandler(j);
-         * //todo change this in properway
-         * if (metadata.getRules().getPhaseName().equals("")){
-         * metadata.getRules().setPhaseName("global");
-         * }
-         * allHandlers.add(metadata);
-         * }
-         * }
-         */
+        * //adding server specific handlers  . global
+        * for(int intA=0 ; intA < count; intA ++){
+        * moduleName = server.getModule(intA);
+        * module = engineRegistry.getModule(moduleName);
+        * switch (flowtype){
+        * case 1 : {
+        * flow = module.getInFlow();
+        * break;
+        * }
+        * case  2 : {
+        * flow = module.getOutFlow();
+        * break;
+        * }
+        * case 3 : {
+        * flow = module.getFaultFlow();
+        * break;
+        * }
+        * }
+        * for(int j= 0 ; j < flow.getHandlerCount() ; j++ ){
+        * HandlerMetaData metadata = flow.getHandler(j);
+        * //todo change this in properway
+        * if (metadata.getRules().getPhaseName().equals("")){
+        * metadata.getRules().setPhaseName("global");
+        * }
+        * allHandlers.add(metadata);
+        * }
+        * }
+        */
 
         // service module handlers
         Collection collection = axisService.getModules();
@@ -217,36 +212,70 @@
      * @throws PhaseException
      */
     public void buildTranspotsChains() throws PhaseException {
-        try {
-            HashMap transports = engineRegistry.getTransports();
-            Collection coltrnsport = transports.values();
-            for (Iterator iterator = coltrnsport.iterator();
-                 iterator.hasNext();) {
-                AxisTransport transport = (AxisTransport) iterator.next();
-                buildTransportChains(transport);
+        HashMap axisTransportIn = engineRegistry.getTransportsIn();
+        HashMap axisTransportOut = engineRegistry.getTransportsOut();
+
+        Collection colintrnsport = axisTransportIn.values();
+        for (Iterator iterator = colintrnsport.iterator();
+             iterator.hasNext();) {
+            AxisTransportIn transport = (AxisTransportIn) iterator.next();
+            buildINTransportChains(transport);
+        }
+
+        Collection colouttrnsport = axisTransportOut.values();
+        for (Iterator iterator = colouttrnsport.iterator();
+             iterator.hasNext();) {
+            AxisTransportOut transport = (AxisTransportOut) iterator.next();
+            buildOutTransportChains(transport);
+        }
+    }
+
+
+    private void buildINTransportChains(AxisTransportIn transport)
+            throws PhaseException {
+        Flow flow = null;
+        for (int type = 1; type < 4; type++) {
+            phaseHolder = new PhaseHolder(engineRegistry, null);
+            switch (type) {
+                case 1:
+                    {
+                        flow = transport.getInFlow();
+                        break;
+                    }
+                case 3:
+                    {
+                        flow = transport.getFaultFlow();
+                        break;
+                    }
             }
-        } catch (AxisFault axisFault) {
-            throw new PhaseException("AxisFault" + axisFault.getMessage());
+            if (flow != null) {
+                for (int j = 0; j < flow.getHandlerCount(); j++) {
+                    HandlerMetadata metadata = flow.getHandler(j);
+
+                    // todo change this in properway
+                    if (metadata.getRules().getPhaseName().equals("")) {
+                        metadata.getRules().setPhaseName("transport");
+                    }
+                    phaseHolder.addHandler(metadata);
+                }
+            }
+            phaseHolder.buildTransportChain(transport, type);
         }
     }
 
+
     /**
      * Method buildTransportChains
      *
      * @param transport
      * @throws PhaseException
      */
-    private void buildTransportChains(AxisTransport transport)
+    private void buildOutTransportChains(AxisTransportOut transport)
             throws PhaseException {
         Flow flow = null;
         for (int type = 1; type < 4; type++) {
             phaseHolder = new PhaseHolder(engineRegistry, null);
             switch (type) {
-                case 1:
-                    {
-                        flow = transport.getInFlow();
-                        break;
-                    }
                 case 2:
                     {
                         flow = transport.getOutFlow();
@@ -274,12 +303,12 @@
     }
 
     /**
-         * Method buildGlobalChains
-         *
-         * @param global
-         * @throws AxisFault
-         * @throws PhaseException
-         */
+     * Method buildGlobalChains
+     *
+     * @param global
+     * @throws AxisFault
+     * @throws PhaseException
+     */
     public void buildGlobalChains(AxisGlobal global)
             throws AxisFault, PhaseException {
         List modules = (List) global.getModules();

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentConstants.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentConstants.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentConstants.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment;
 
 /**
@@ -56,7 +56,7 @@
     String ATTNAME = "name";
     String ATTLOCKED = "locked";
 
-   // for operatiins
+    // for operatiins
     String ATQNAME = "name";
     String ATUSE = "use";
 
@@ -74,12 +74,12 @@
     String JAVAIMPL = "implementation";
 
     String TRANSPORTSTAG = "transports";
-    String TRANSPORTTAG ="transport";
+    String TRANSPORTTAG = "transport";
     String TRANSPORTSENDER = "transportSender";
     String TRANSPORTRECEIVER = "transportReceiver";
 
 
     String HOTDEPLOYMENT = "hotdeployment";
-    String HOTUPDATE ="hotupdate";
+    String HOTUPDATE = "hotupdate";
 
 }

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentEngine.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentEngine.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentEngine.java Thu Mar 17 21:11:55 2005
@@ -33,9 +33,6 @@
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLStreamException;
 import java.io.*;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLClassLoader;
 import java.util.ArrayList;
 import java.util.Iterator;
 import java.util.List;
@@ -50,7 +47,6 @@
     private boolean hotupdate = true;  // to do hot update or not
 
 
-
     /**
      * This will store all the web Services to deploy
      */
@@ -93,12 +89,14 @@
      */
 
     public DeploymentEngine(String RepositaryName) throws DeploymentException {
-        this(RepositaryName,"server.xml");
+        this(RepositaryName, "server.xml");
 
     }
+
     /**
      * this constructor is used to deploy a web service programatically, by using classLoader
      * and InputStream
+     *
      * @param engineRegistry
      */
     public DeploymentEngine(EngineRegistry engineRegistry) {
@@ -108,26 +106,26 @@
     public DeploymentEngine(String RepositaryName, String serverXMLFile) throws DeploymentException {
         this.folderName = RepositaryName;
         File repository = new File(RepositaryName);
-        if(!repository.exists()){
+        if (!repository.exists()) {
             repository.mkdirs();
-            File servcies = new File(repository,"services");
-            File modules = new File(repository,"modules");
+            File servcies = new File(repository, "services");
+            File modules = new File(repository, "modules");
             modules.mkdirs();
             servcies.mkdirs();
         }
-        File serverConf = new File(repository,serverXMLFile);
-        if(!serverConf.exists()){
+        File serverConf = new File(repository, serverXMLFile);
+        if (!serverConf.exists()) {
             ClassLoader cl = Thread.currentThread().getContextClassLoader();
             InputStream in = cl.getResourceAsStream("org/apache/axis/deployment/server.xml");
-            if(in != null){
+            if (in != null) {
                 try {
                     serverConf.createNewFile();
                     FileOutputStream out = new FileOutputStream(serverConf);
                     int BUFSIZE = 512; // since only a test file going to load , the size has selected
                     byte[] buf = new byte[BUFSIZE];
                     int read;
-                    while((read = in.read(buf)) > 0){
-                        out.write(buf,0,read);
+                    while ((read = in.read(buf)) > 0) {
+                        out.write(buf, 0, read);
                     }
                     in.close();
                     out.close();
@@ -136,7 +134,7 @@
                 }
 
 
-            } else{
+            } else {
                 throw new DeploymentException("can not found org/apache/axis/deployment/server.xml");
 
             }
@@ -156,6 +154,7 @@
 
     /**
      * tio get ER
+     *
      * @return
      */
     public EngineRegistry getEngineRegistry() {
@@ -170,7 +169,7 @@
      */
     public EngineRegistry start() throws AxisFault, DeploymentException, XMLStreamException {
         //String fileName;
-        if(serverconfigName == null) {
+        if (serverconfigName == null) {
             throw new DeploymentException("path to Server.xml can not be NUll");
         }
         File tempfile = new File(serverconfigName);
@@ -180,19 +179,19 @@
             DeploymentParser parser = new DeploymentParser(in, this);
             parser.procesServerXML(server);
         } catch (FileNotFoundException e) {
-            throw new AxisFault("Exception at deployment",e);
+            throw new AxisFault("Exception at deployment", e);
         }
         setDeploymentFeatures();
-        if(hotdeployment){
+        if (hotdeployment) {
             startSearch(this);
         } else {
             RepositoryListenerImpl repository =
-                    new RepositoryListenerImpl(folderName,this);
+                    new RepositoryListenerImpl(folderName, this);
         }
         try {
-            valideServerModule() ;
+            valideServerModule();
         } catch (PhaseException e) {
-            log.info("Module validation failed"  + e.getMessage());
+            log.info("Module validation failed" + e.getMessage());
         }
 
         return engineRegistry;
@@ -205,15 +204,15 @@
         String value;
         Parameter parahotdeployment = server.getParameter(HOTDEPLOYMENT);
         Parameter parahotupdate = server.getParameter(HOTUPDATE);
-        if(parahotdeployment != null ){
-            value = (String)parahotdeployment.getValue();
-            if("false".equals(value))
-                hotdeployment=  false;
-        }
-        if(parahotupdate != null){
-            value =(String)parahotupdate.getValue();
-            if("false".equals(value))
-                hotupdate =false;
+        if (parahotdeployment != null) {
+            value = (String) parahotdeployment.getValue();
+            if ("false".equals(value))
+                hotdeployment = false;
+        }
+        if (parahotupdate != null) {
+            value = (String) parahotupdate.getValue();
+            if ("false".equals(value))
+                hotupdate = false;
 
         }
     }
@@ -222,11 +221,11 @@
      * This methode used to check the modules referd by server.xml
      * are exist , or they have deployed
      */
-    private void valideServerModule() throws AxisFault, PhaseException{
-        Iterator itr= server.getModules().iterator();
+    private void valideServerModule() throws AxisFault, PhaseException {
+        Iterator itr = server.getModules().iterator();
         while (itr.hasNext()) {
             QName qName = (QName) itr.next();
-            if(getModule(qName) == null ){
+            if (getModule(qName) == null) {
                 throw new AxisFault(server + " Refer to invalid module " + qName + " has not bean deployed yet !");
             }
         }
@@ -246,11 +245,11 @@
      * inorder to perform Hot deployment and so on..
      */
     private void startSearch(DeploymentEngine engine) {
-        scheduler =new Scheduler();
+        scheduler = new Scheduler();
         scheduler.schedule(new SchedulerTask(engine, folderName), new DeploymentIterator());
     }
 
-    private EngineRegistry createEngineRegistry()  {
+    private EngineRegistry createEngineRegistry() {
         EngineRegistry newEngineRegisty;
 
         server = new AxisGlobal();
@@ -265,12 +264,12 @@
         serviceMetaData = getRunnerbleService(serviceMetaData);
         engineRegistry.addService(serviceMetaData);
         Parameter para = serviceMetaData.getParameter("OUTSERVICE");
-        if(para != null ){
+        if (para != null) {
             String value = (String) para.getValue();
-            if("true".equals(value)){
+            if ("true".equals(value)) {
                 Class temp = serviceMetaData.getServiceClass();
                 try {
-                    Thread servie = (Thread)temp.newInstance();
+                    Thread servie = (Thread) temp.newInstance();
                     servie.start();
                 } catch (InstantiationException e) {
                     throw new AxisFault(e.getMessage());
@@ -281,9 +280,11 @@
             }
         }
     }
+
     /**
      * This method is used to fill the axis service , it dose loading service class and also the provider class
      * and it will also load the service handlers
+     *
      * @param serviceMetaData
      * @return
      * @throws AxisFault
@@ -292,43 +293,43 @@
     private AxisService getRunnerbleService(AxisService serviceMetaData) throws AxisFault, PhaseException {
         loadServiceClass(serviceMetaData);
         Flow inflow = serviceMetaData.getInFlow();
-        if(inflow != null ){
+        if (inflow != null) {
             addFlowHandlers(inflow);
         }
 
         Flow outFlow = serviceMetaData.getOutFlow();
-        if(outFlow != null){
+        if (outFlow != null) {
             addFlowHandlers(outFlow);
         }
 
         Flow faultFlow = serviceMetaData.getFaultFlow();
-        if(faultFlow != null) {
+        if (faultFlow != null) {
             addFlowHandlers(faultFlow);
         }
-        PhaseResolver reolve = new PhaseResolver(engineRegistry,serviceMetaData);
+        PhaseResolver reolve = new PhaseResolver(engineRegistry, serviceMetaData);
         reolve.buildchains();
         serviceMetaData.setClassLoader(currentFileItem.getClassLoader());
         return serviceMetaData;
     }
 
 
-    private void loadServiceClass(AxisService service) throws AxisFault{
+    private void loadServiceClass(AxisService service) throws AxisFault {
         Class serviceclass = null;
         ClassLoader loader1 = currentFileItem.getClassLoader();
-        try{
+        try {
             service.setClassLoader(loader1);
             String readInClass = currentFileItem.getClassName();
-            if(readInClass != null && !"".equals(readInClass)){
+            if (readInClass != null && !"".equals(readInClass)) {
                 serviceclass = Class.forName(currentFileItem.getClassName(), true, loader1);
             }
             service.setServiceClass(serviceclass);
             String readInProviderName = currentFileItem.getProvideName();
-            if(readInProviderName != null && ! "".equals(readInProviderName)){
-                Class provider =Class.forName(currentFileItem.getProvideName(), true, loader1);
-                service.setProvider((Provider)provider.newInstance());
+            if (readInProviderName != null && !"".equals(readInProviderName)) {
+                Class provider = Class.forName(currentFileItem.getProvideName(), true, loader1);
+                service.setProvider((Provider) provider.newInstance());
             }
         } catch (Exception e) {
-            throw new AxisFault(e.getMessage(),e);
+            throw new AxisFault(e.getMessage(), e);
         }
 
     }
@@ -407,7 +408,7 @@
                 currentFileItem = (HDFileItem) wsToDeploy.get(i);
                 int type = currentFileItem.getType();
                 UnZipJAR unZipJAR = new UnZipJAR();
-                String serviceStatus ="";
+                String serviceStatus = "";
                 switch (type) {
                     case SERVICE:
                         try {
@@ -417,20 +418,20 @@
                             addnewService(service);
                             log.info("Deployement WS Name  " + currentFileItem.getName());
                         } catch (DeploymentException de) {
-                            log.info("Invalid service" + currentFileItem.getName() );
+                            log.info("Invalid service" + currentFileItem.getName());
                             log.info("DeploymentException  " + de);
                             serviceStatus = "Error:\n" + de.getMessage();
                         } catch (AxisFault axisFault) {
-                            log.info("Invalid service" + currentFileItem.getName() );
+                            log.info("Invalid service" + currentFileItem.getName());
                             log.info("AxisFault  " + axisFault);
                             serviceStatus = "Error:\n" + axisFault.getMessage();
                         } catch (Exception e) {
-                            log.info("Invalid service" + currentFileItem.getName() );
+                            log.info("Invalid service" + currentFileItem.getName());
                             log.info("Exception  " + e);
                             serviceStatus = "Error:\n" + e.getMessage();
                         } finally {
-                            if(serviceStatus.startsWith("Error:")) {
-                                engineRegistry.getFaulytServices().put(getAxisServiceName(currentFileItem.getName()),serviceStatus);
+                            if (serviceStatus.startsWith("Error:")) {
+                                engineRegistry.getFaulytServices().put(getAxisServiceName(currentFileItem.getName()), serviceStatus);
                             }
                             currentFileItem = null;
                         }
@@ -442,10 +443,10 @@
                             addNewModule(metaData);
                             log.info("Moduel WS Name  " + currentFileItem.getName() + " modulename :" + metaData.getName());
                         } catch (DeploymentException e) {
-                            log.info("Invalid module" + currentFileItem.getName() );
+                            log.info("Invalid module" + currentFileItem.getName());
                             log.info("DeploymentException  " + e);
                         } catch (AxisFault axisFault) {
-                            log.info("Invalid module" + currentFileItem.getName() );
+                            log.info("Invalid module" + currentFileItem.getName());
                             log.info("AxisFault  " + axisFault);
                         } finally {
                             currentFileItem = null;
@@ -460,12 +461,12 @@
 
     public void doUnDeploye() {
         //todo complete this
-        String serviceName ="";
-        try{
+        String serviceName = "";
+        try {
             if (wsToUnDeploy.size() > 0) {
                 for (int i = 0; i < wsToUnDeploy.size(); i++) {
                     WSInfo wsInfo = (WSInfo) wsToUnDeploy.get(i);
-                    if(wsInfo.getType()==SERVICE) {
+                    if (wsInfo.getType() == SERVICE) {
                         serviceName = getAxisServiceName(wsInfo.getFilename());
                         engineRegistry.removeService(new QName(serviceName));
                         log.info("UnDeployement WS Name  " + wsInfo.getFilename());
@@ -474,7 +475,7 @@
                 }
 
             }
-        }catch(AxisFault e){
+        } catch (AxisFault e) {
             log.info("AxisFault " + e);
         }
         wsToUnDeploy.clear();
@@ -487,24 +488,25 @@
     /**
      * This method is used to retrive service name form the arechive file name
      * if the archive file name is service1.aar , then axis service name would be service1
+     *
      * @param fileName
      * @return
      */
-    private String getAxisServiceName(String fileName){
+    private String getAxisServiceName(String fileName) {
         char seperator = '.';
         String value = null;
         int index = fileName.indexOf(seperator);
         if (index > 0) {
-            value = fileName.substring(0 , index);
+            value = fileName.substring(0, index);
             return value;
         }
         return fileName;
     }
 
-    public AxisService deployService(ClassLoader classLoder , InputStream serviceStream ,String servieName) throws DeploymentException {
+    public AxisService deployService(ClassLoader classLoder, InputStream serviceStream, String servieName) throws DeploymentException {
         AxisService service = null;
         try {
-            currentFileItem = new HDFileItem(SERVICE,servieName);
+            currentFileItem = new HDFileItem(SERVICE, servieName);
             currentFileItem.setClassLoader(classLoder);
             service = new AxisService();
             DeploymentParser schme = new DeploymentParser(serviceStream, this, "");

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentException.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentException.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentException.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentException.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment;
 
 public class DeploymentException extends Exception {

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentParser.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentParser.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentParser.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/DeploymentParser.java Thu Mar 17 21:11:55 2005
@@ -1,35 +1,26 @@
 /*
- * Copyright 2004,2005 The Apache Software Foundation.
- * 
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
+* Copyright 2004,2005 The Apache Software Foundation.
+*
+* Licensed under the Apache License, Version 2.0 (the "License");
+* you may not use this file except in compliance with the License.
+* You may obtain a copy of the License at
+*
+*      http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
 package org.apache.axis.deployment;
 
-import org.apache.axis.description.AxisGlobal;
-import org.apache.axis.description.AxisModule;
-import org.apache.axis.description.AxisOperation;
-import org.apache.axis.description.AxisService;
-import org.apache.axis.description.AxisTransport;
-import org.apache.axis.description.Flow;
-import org.apache.axis.description.FlowImpl;
-import org.apache.axis.description.HandlerMetadata;
-import org.apache.axis.description.Parameter;
-import org.apache.axis.description.ParameterImpl;
-import org.apache.axis.description.SimpleAxisOperationImpl;
+import org.apache.axis.description.*;
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.EngineRegistryImpl;
 import org.apache.axis.phaseresolver.PhaseException;
+import org.apache.axis.transport.TransportSender;
 
 import javax.xml.namespace.QName;
 import javax.xml.stream.XMLInputFactory;
@@ -132,12 +123,12 @@
                     if (PARAMETERST.equals(ST)) {
                         Parameter parameter = processParameter();
                         serverMetaData.addParameter(parameter);
-                    } else if (TRANSPORTSTAG.equals(ST)) {
-                        ArrayList trasports = processTransport();
-                        for (int i = 0; i < trasports.size(); i++) {
-                            dpengine.getEngineRegistry().addTransport((AxisTransport) trasports.get(i));
-                        }
-
+                    } else if (TRANSPORTSENDER.equals(ST)) {
+                        AxisTransportOut transportout = proccessTrasnsportOUT();
+                        dpengine.getEngineRegistry().addTransportOut(transportout);
+                    } else if (TRANSPORTRECEIVER.equals(ST)) {
+                        AxisTransportIn transportin = proccessTrasnsportIN();
+                        dpengine.getEngineRegistry().addTransport(transportin);
                     } else if (TYPEMAPPINGST.equals(ST)) {
                         throw new UnsupportedOperationException("Type Mappings are not allowed in server.xml");
                     } else if (MODULEST.equals(ST)) {
@@ -167,13 +158,14 @@
         }
     }
 
-
-    public ArrayList processTransport() throws DeploymentException {
+    public AxisTransportIn proccessTrasnsportIN() throws DeploymentException {
+        AxisTransportIn transportin = null;
+        String attname = pullparser.getAttributeLocalName(0);
+        String attvalue = pullparser.getAttributeValue(0);
+        if (ATTNAME.equals(attname)) {
+            transportin = new AxisTransportIn(new QName(attvalue));
+        }
         boolean END_TRANSPORTS = false;
-        ArrayList transportList = new ArrayList();
-        AxisTransport transport = null;
-
-
         String text = ""; // to store the paramater elemnt
         try {
             while (!END_TRANSPORTS) {
@@ -182,32 +174,89 @@
                     END_TRANSPORTS = true;
                 } else if (eventType == XMLStreamConstants.START_ELEMENT) {
                     String tagnae = pullparser.getLocalName();
-                    if (TRANSPORTTAG.equals(tagnae)) {
-                        String attname = pullparser.getAttributeLocalName(0);
-                        String attvalue = pullparser.getAttributeValue(0);
-                        if (ATTNAME.equals(attname)) {
-                            transport = new AxisTransport(new QName(attvalue));
-                            transportList.add(transport);
-                        }
-                    } else if (transport != null && PARAMETERST.equals(tagnae)) {
+                    if (transportin != null && PARAMETERST.equals(tagnae)) {
                         Parameter parameter = processParameter();
-                        transport.addParameter(parameter);
-                        //axisService. .appParameter(parameter);
-                    } else if (transport != null && INFLOWST.equals(tagnae)) {
+                        transportin.addParameter(parameter);
+                    } else if (transportin != null && INFLOWST.equals(tagnae)) {
                         Flow inFlow = processInFlow();
-                        transport.setInFlow(inFlow);
-                    } else if (transport != null && OUTFLOWST.equals(tagnae)) {
+                        transportin.setInFlow(inFlow);
+                    } else if (transportin != null && OUTFLOWST.equals(tagnae)) {
+                        throw new DeploymentException("OUTFlow dose not support in AxisTransportIN " + tagnae);
+                    } else if (transportin != null && FAILTFLOWST.equals(tagnae)) {
+                        Flow faultFlow = processFaultFlow();
+                        transportin.setFaultFlow(faultFlow);
+                    } else {
+                        throw new DeploymentException("Unknown element " + tagnae);
+                    }
+                } else if (eventType == XMLStreamConstants.END_ELEMENT) {
+                    String endtagname = pullparser.getLocalName();
+                    if (TRANSPORTRECEIVER.equals(endtagname)) {
+                        END_TRANSPORTS = true;
+                        break;
+                    }
+                } else if (eventType == XMLStreamConstants.CHARACTERS) {
+                    text += pullparser.getText();
+                }
+            }
+        } catch (XMLStreamException e) {
+            throw new DeploymentException("parser Exception", e);
+        } catch (Exception e) {
+            throw new DeploymentException("Unknown process Exception", e);
+        }
+        return transportin;
+    }
+
+    public AxisTransportOut proccessTrasnsportOUT() throws DeploymentException {
+        AxisTransportOut transportout = null;
+        String attname;
+        String attvalue;
+        int attribCount = pullparser.getAttributeCount();
+        for (int i = 0; i < attribCount; i++) {
+            attname = pullparser.getAttributeLocalName(i);
+            attvalue = pullparser.getAttributeValue(i);
+            if (ATTNAME.equals(attname)) {
+                transportout = new AxisTransportOut(new QName(attvalue));
+            } else if (transportout != null && CLASSNAME.equals(attname)) {
+                Class sender = null;
+                try {
+                    sender = Class.forName(attvalue, true, Thread.currentThread().getContextClassLoader());
+                    TransportSender transportSender = (TransportSender) sender.newInstance();
+                    transportout.setSender(transportSender);
+                } catch (ClassNotFoundException e) {
+                    throw  new DeploymentException(e.getMessage());
+                } catch (IllegalAccessException e) {
+                    throw  new DeploymentException(e.getMessage());
+                } catch (InstantiationException e) {
+                    throw  new DeploymentException(e.getMessage());
+                }
+            }
+        }
+        boolean END_TRANSPORTS = false;
+        String text = ""; // to store the paramater elemnt
+        try {
+            while (!END_TRANSPORTS) {
+                int eventType = pullparser.next();
+                if (eventType == XMLStreamConstants.END_DOCUMENT) {
+                    END_TRANSPORTS = true;
+                } else if (eventType == XMLStreamConstants.START_ELEMENT) {
+                    String tagnae = pullparser.getLocalName();
+                    if (transportout != null && PARAMETERST.equals(tagnae)) {
+                        Parameter parameter = processParameter();
+                        transportout.addParameter(parameter);
+                    } else if (transportout != null && INFLOWST.equals(tagnae)) {
+                        throw new DeploymentException("InFlow dose not support in AxisTransportOut  " + tagnae);
+                    } else if (transportout != null && OUTFLOWST.equals(tagnae)) {
                         Flow outFlow = processOutFlow();
-                        transport.setOutFlow(outFlow);
-                    } else if (transport != null && FAILTFLOWST.equals(tagnae)) {
+                        transportout.setOutFlow(outFlow);
+                    } else if (transportout != null && FAILTFLOWST.equals(tagnae)) {
                         Flow faultFlow = processFaultFlow();
-                        transport.setFaultFlow(faultFlow);
+                        transportout.setFaultFlow(faultFlow);
                     } else {
                         throw new DeploymentException("Unknown element " + tagnae);
                     }
                 } else if (eventType == XMLStreamConstants.END_ELEMENT) {
                     String endtagname = pullparser.getLocalName();
-                    if (TRANSPORTSTAG.equals(endtagname)) {
+                    if (TRANSPORTSENDER.equals(endtagname)) {
                         END_TRANSPORTS = true;
                         break;
                     }
@@ -220,7 +269,7 @@
         } catch (Exception e) {
             throw new DeploymentException("Unknown process Exception", e);
         }
-        return transportList;
+        return transportout;
     }
 
     /**
@@ -247,8 +296,8 @@
                     throw new DeploymentException("Bad arguments for the service" + axisService.getName());
                 }
             }
-            if(!proviceFound ){
-               throw new DeploymentException("Provider class has not been specified");
+            if (!proviceFound) {
+                throw new DeploymentException("Provider class has not been specified");
             }
         } else
             throw new DeploymentException("Bad arguments" + axisService.getName());

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/EngineRegistryFactoryImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/EngineRegistryFactoryImpl.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/EngineRegistryFactoryImpl.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/EngineRegistryFactoryImpl.java Thu Mar 17 21:11:55 2005
@@ -13,23 +13,22 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment;
 
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.EngineRegistry;
 import org.apache.axis.engine.EngineRegistryFactory;
-import org.apache.axis.phaseresolver.PhaseException;
 
 import javax.xml.stream.XMLStreamException;
 
 
-public class EngineRegistryFactoryImpl implements  EngineRegistryFactory{
+public class EngineRegistryFactoryImpl implements EngineRegistryFactory {
     public EngineRegistry createEngineRegistry(String file) throws AxisFault {
         try {
             DeploymentEngine deploymentEngine = new DeploymentEngine(file);
             return deploymentEngine.start();
-        }catch (DeploymentException e) {
+        } catch (DeploymentException e) {
             throw AxisFault.makeFault(e);
         } catch (XMLStreamException e) {
             throw AxisFault.makeFault(e);

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListener.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListener.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListener.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListener.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.listener;
 
 /**

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListenerImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListenerImpl.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListenerImpl.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/listener/RepositoryListenerImpl.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.listener;
 
 import org.apache.axis.deployment.DeploymentConstants;
@@ -115,7 +115,7 @@
         // adding the root folder to the vector
         currentJars.add(root);
 
-        while (currentJars.size() > 0)  {        // loop until empty
+        while (currentJars.size() > 0) {        // loop until empty
             File dir = (File) currentJars.get(0); // get first dir
             currentJars.remove(0);       // remove it
             files = dir.list();              // get list of files
@@ -141,7 +141,7 @@
      * @return
      */
     private boolean isJarFile(String filename) {
-        if(filename.endsWith(".jar")| filename.equals(".aar")) {
+        if (filename.endsWith(".jar") | filename.equals(".aar")) {
             return true;
         }
         return false;

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/HDFileItem.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/HDFileItem.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/HDFileItem.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/HDFileItem.java Thu Mar 17 21:11:55 2005
@@ -16,13 +16,12 @@
 
 package org.apache.axis.deployment.repository.utill;
 
-import org.apache.axis.engine.Provider;
 import org.apache.axis.engine.AxisFault;
 
 import java.io.File;
-import java.net.URLClassLoader;
-import java.net.URL;
 import java.net.MalformedURLException;
+import java.net.URL;
+import java.net.URLClassLoader;
 
 /**
  * HDFileItem = Hot Deployment File Item , to store infromation of the module or servise
@@ -37,9 +36,9 @@
     private String provideName;
     private String name;
 
-    public HDFileItem(int type , String name) {
+    public HDFileItem(int type, String name) {
         this.type = type;
-        this.name = name ;
+        this.name = name;
     }
 
     public String getClassName() {
@@ -67,8 +66,8 @@
         return file.getName();
     }
 
-    public String getServiceName(){
-        if(file!= null){
+    public String getServiceName() {
+        if (file != null) {
             return file.getName();
         } else
             return name;
@@ -106,9 +105,9 @@
                 classLoader = new URLClassLoader(urlsToLoadFrom, parent);
 
             } catch (MalformedURLException e) {
-                throw new AxisFault(e.getMessage(),e);
+                throw new AxisFault(e.getMessage(), e);
             } catch (Exception e) {
-                throw new AxisFault(e.getMessage(),e);
+                throw new AxisFault(e.getMessage(), e);
             }
         }
     }

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/UnZipJAR.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/UnZipJAR.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/UnZipJAR.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/UnZipJAR.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.repository.utill;
 
 import org.apache.axis.deployment.DeploymentConstants;
@@ -78,7 +78,7 @@
                     break;
                 }
             }
-           //  zin.closeEntry();
+            //  zin.closeEntry();
             zin.close();
             if (!foundmoduleXML) {
                 throw new DeploymentException("module.xml not found");

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfo.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfo.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfo.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfo.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.repository.utill;
 
 

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfoList.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfoList.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfoList.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/repository/utill/WSInfoList.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.repository.utill;
 
 import org.apache.axis.deployment.DeploymentConstants;
@@ -76,7 +76,7 @@
                         HDFileItem hdFileItem = new HDFileItem(file, SERVICE);
                         deplorer.addtowsToDeploy(hdFileItem);//to inform that new web service is deployed
                     } else {
-                        if(deplorer.isHotupdate()) {
+                        if (deplorer.isHotupdate()) {
                             WSInfo tempWSInfo = getFileItem(file.getName());
                             if (isModified(file, tempWSInfo)) {  // caheck whether file is updated
                                 tempWSInfo.setLastmodifieddate(file.lastModified());
@@ -98,7 +98,7 @@
                         HDFileItem hdFileItem = new HDFileItem(file, MODULE);
                         deplorer.addtowsToDeploy(hdFileItem);//to inform that new web service is deployed
                     } else {
-                        if(deplorer.isHotupdate()) {
+                        if (deplorer.isHotupdate()) {
                             WSInfo tempWSInfo = getFileItem(file.getName());
                             if (isModified(file, tempWSInfo)) {
                                 tempWSInfo.setLastmodifieddate(file.lastModified());
@@ -207,7 +207,7 @@
      */
     public void update() {
         checkForUndeploye();
-        if(deplorer.isHotupdate()) {
+        if (deplorer.isHotupdate()) {
             deplorer.doUnDeploye();
         }
         deplorer.doDeploy();

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/DeploymentIterator.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/DeploymentIterator.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/DeploymentIterator.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/DeploymentIterator.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.scheduler;
 
 import java.util.Calendar;

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/ScheduleIterator.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/ScheduleIterator.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/ScheduleIterator.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/ScheduleIterator.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.scheduler;
 
 import java.util.Date;

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/Scheduler.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/Scheduler.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/Scheduler.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/Scheduler.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.scheduler;
 
 import java.util.Date;

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/SchedulerTask.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/SchedulerTask.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/SchedulerTask.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/scheduler/SchedulerTask.java Thu Mar 17 21:11:55 2005
@@ -13,7 +13,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
- 
+
 package org.apache.axis.deployment.scheduler;
 
 import org.apache.axis.deployment.DeploymentConstants;

Modified: webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/server.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/server.xml?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/server.xml (original)
+++ webservices/axis/trunk/java/modules/deployment/src/java/org/apache/axis/deployment/server.xml Thu Mar 17 21:11:55 2005
@@ -1,10 +1,21 @@
 <server name="AxisJava2.0">
     <parameter name="hotdeployment" locked="xsd:false">true</parameter>
     <parameter name="hotupdate" locked="xsd:false">true</parameter>
-    <transports>
-        <transport name="http"/>
-        <transport name="smtp"/>
-    </transports>
+
+    <transportReceiver name="http">
+        <inflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </inflow>
+    </transportReceiver>
+    <transportSender name="http" class="org.apache.axis.transport.http.HTTPTransportSender">
+        <outflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </outflow>
+    </transportSender>
+
+
     <phaseOrder>
         <phase name="global"/>
         <phase name="transport"/>

Modified: webservices/axis/trunk/java/modules/deployment/src/samples/deployment/OutService/build.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/samples/deployment/OutService/build.xml?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/samples/deployment/OutService/build.xml (original)
+++ webservices/axis/trunk/java/modules/deployment/src/samples/deployment/OutService/build.xml Thu Mar 17 21:11:55 2005
@@ -38,7 +38,7 @@
 	</target>
 
 	<target name="init">
-		<uptodate property="jars.uptodate" targetfile="${jar.dir}/service2.jar">
+		<uptodate property="jars.uptodate" targetfile="${jar.dir}/OutService.jar">
 			<srcfiles dir="${src}">
 				<include name="**/*.java"/>
 				<include name="**/*.xml"/>

Modified: webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server-transport.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server-transport.xml?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server-transport.xml (original)
+++ webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server-transport.xml Thu Mar 17 21:11:55 2005
@@ -1,22 +1,25 @@
 <server name ="AxisJava2.0" >
-     <transports>
-        <transport name ="http">
-            <parameter name="para1" locked="xsd:true">10</parameter>
-			<inflow>
-    			<handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
-		        <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
-    		</inflow>
-		    <outflow>
-		        <handler name="h3" class="org.apache.axis.deployment.SpeakingHandler"/>
-		    </outflow>
-        </transport>
-        <transport name ="smtp">
-		    <faultflow>
-        		<handler name="h4" class="org.apache.axis.deployment.SpeakingHandler"/>
-		    </faultflow>
-        </transport>
-    </transports>
-   <phaseOrder>
+    <transportReceiver name="http">
+        <parameter name="para1" locked="xsd:true">10</parameter>
+        <inflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </inflow>
+    </transportReceiver>
+
+    <transportSender name="http" class="org.apache.axis.transport.http.HTTPTransportSender">
+        <parameter name="para1" locked="xsd:true">10</parameter>
+        <outflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </outflow>
+         <faultflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </faultflow>
+    </transportSender>
+
+    <phaseOrder>
         <phase name="global"/>
         <phase name="transport"/>
         <phase name="module"/>

Modified: webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server.xml?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server.xml (original)
+++ webservices/axis/trunk/java/modules/deployment/src/test-resources/deployment/server.xml Thu Mar 17 21:11:55 2005
@@ -3,13 +3,21 @@
     <parameter name="para2" locked="xsd:false">Colombo</parameter>
 
     <parameter name="hotdeployment" locked="xsd:false">true</parameter>
-        <parameter name="hotupdate" locked="xsd:false">true</parameter>
+   <parameter name="hotupdate" locked="xsd:false">true</parameter>
     
     <module ref="module1"> </module>
-    <transports>
-        <transport name ="HTTP"/>
-        <transport name ="SMTP"/>
-    </transports>
+     <transportReceiver name="http">
+        <inflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </inflow>
+    </transportReceiver>
+    <transportSender name="http" class="org.apache.axis.transport.http.HTTPTransportSender">
+        <outflow>
+            <handler name="h1" class="org.apache.axis.deployment.SpeakingHandler"/>
+            <handler name="h2" class="org.apache.axis.deployment.SpeakingHandler"/>
+        </outflow>
+    </transportSender>
   <!--
     <module ref="uri">
         <parameter name="para3" locked="xsd:true">10</parameter>

Modified: webservices/axis/trunk/java/modules/deployment/src/test/org/apache/axis/deployment/TransportDeploymentTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/deployment/src/test/org/apache/axis/deployment/TransportDeploymentTest.java?view=diff&r1=158022&r2=158023
==============================================================================
--- webservices/axis/trunk/java/modules/deployment/src/test/org/apache/axis/deployment/TransportDeploymentTest.java (original)
+++ webservices/axis/trunk/java/modules/deployment/src/test/org/apache/axis/deployment/TransportDeploymentTest.java Thu Mar 17 21:11:55 2005
@@ -17,6 +17,8 @@
 package org.apache.axis.deployment;
 
 import org.apache.axis.description.AxisTransport;
+import org.apache.axis.description.AxisTransportIn;
+import org.apache.axis.description.AxisTransportOut;
 import org.apache.axis.engine.AxisFault;
 import org.apache.axis.engine.EngineRegistry;
 import org.apache.axis.phaseresolver.PhaseException;
@@ -36,12 +38,11 @@
         DeploymentEngine engine = new DeploymentEngine(testResourceDir + "/deployment", "server-transport.xml");
         engine.start();
         EngineRegistry er = engine.getEngineRegistry();
-        AxisTransport transport = er.getTransport(new QName("http"));
+        AxisTransportIn transport = er.getTransportIn(new QName("http"));
         assertNotNull(transport);
         assertNotNull(transport.getInFlow());
-        assertNotNull(transport.getOutFlow());
-        AxisTransport transport1 = er.getTransport(new QName("smtp"));
+        AxisTransportOut transport1 = er.getTransportOut(new QName("http"));
         assertNotNull(transport1);
-        assertNotNull(transport1.getFaultFlow());
+        assertNotNull(transport1.getOutFlow());
     }
 }