You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by de...@apache.org on 2005/04/18 11:52:23 UTC
svn commit: r161750 - in webservices/axis/trunk/java/modules:
core/src/org/apache/axis/deployment/ core/src/org/apache/axis/description/
core/src/org/apache/axis/engine/ core/src/org/apache/axis/phaseresolver/
core/src/org/apache/axis/util/ core/test/org/apache/axis/deployment/
core/test/org/apache/axis/description/ samples/test/org/apache/axis/engine/
Author: deepal
Date: Mon Apr 18 02:52:19 2005
New Revision: 161750
URL: http://svn.apache.org/viewcvs?view=rev&rev=161750
Log:
Made changes to deployment to match with refactoring.
(NB: all the deployment test cases will be faild and I will be fix them soon :) )
Modified:
webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentEngine.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentParser.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisModule.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisService.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/DescriptionConstants.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowInclude.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowIncludeImpl.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/PhasesIncludeImpl.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/AxisEngine.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/EngineConfiguration.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseHolder.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseResolver.java
webservices/axis/trunk/java/modules/core/src/org/apache/axis/util/Utils.java
webservices/axis/trunk/java/modules/core/test/org/apache/axis/deployment/BuildERWithDeploymentTest.java
webservices/axis/trunk/java/modules/core/test/org/apache/axis/description/RegistryTest.java
webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/MessageWithServerTest.java
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentEngine.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentEngine.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentEngine.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentEngine.java Mon Apr 18 02:52:19 2005
@@ -30,6 +30,7 @@
import javax.xml.stream.XMLStreamException;
import org.apache.axis.context.EngineContext;
+import org.apache.axis.context.ServiceContext;
import org.apache.axis.deployment.listener.RepositoryListenerImpl;
import org.apache.axis.deployment.repository.utill.HDFileItem;
import org.apache.axis.deployment.repository.utill.UnZipJAR;
@@ -94,6 +95,8 @@
// private static ServerMetaData server = new ServerMetaData();
private AxisGlobal server;
+ private EngineContext engineContext;
+
private HDFileItem currentFileItem;
@@ -245,7 +248,7 @@
}
}
PhaseResolver phaseResolver = new PhaseResolver(engineconfig);
- phaseResolver.buildGlobalChains(server);
+ phaseResolver.buildGlobalChains(engineContext);
phaseResolver.buildTranspotsChains();
}
@@ -269,6 +272,7 @@
server = new AxisGlobal();
newEngineRegisty = new EngineConfigurationImpl(server);
+ engineContext = new EngineContext(newEngineRegisty);
return newEngineRegisty;
}
@@ -276,9 +280,10 @@
private void addnewService(AxisService serviceMetaData) throws AxisFault, PhaseException {
currentFileItem.setClassLoader();
- serviceMetaData = getRunnableService(serviceMetaData);
+ ServiceContext serviceContext = getRunnableService(serviceMetaData);
+ engineContext.addService(serviceContext);
engineconfig.addService(serviceMetaData);
- Parameter para = serviceMetaData.getParameter("OUTSERVICE");
+ /*Parameter para = serviceMetaData.getParameter("OUTSERVICE");
if (para != null) {
String value = (String) para.getValue();
if ("true".equals(value)) {
@@ -293,7 +298,7 @@
}
}
- }
+ }*/
}
/**
@@ -305,7 +310,7 @@
* @throws AxisFault
* @throws PhaseException
*/
- private AxisService getRunnableService(AxisService serviceMetaData) throws AxisFault, PhaseException {
+ private ServiceContext getRunnableService(AxisService serviceMetaData) throws AxisFault, PhaseException {
loadMessageReceiver(serviceMetaData);
Flow inflow = serviceMetaData.getInFlow();
if (inflow != null) {
@@ -317,14 +322,15 @@
addFlowHandlers(outFlow);
}
- Flow faultFlow = serviceMetaData.getFaultFlow();
+ Flow faultFlow = serviceMetaData.getFaultInFlow();
if (faultFlow != null) {
addFlowHandlers(faultFlow);
}
- PhaseResolver reolve = new PhaseResolver(engineconfig, serviceMetaData);
+ ServiceContext serviceContext = new ServiceContext(serviceMetaData);
+ PhaseResolver reolve = new PhaseResolver(engineconfig, serviceMetaData,serviceContext);
reolve.buildchains();
serviceMetaData.setClassLoader(currentFileItem.getClassLoader());
- return serviceMetaData;
+ return serviceContext;
}
@@ -390,7 +396,7 @@
Flow outFlow = moduelmetada.getOutFlow();
addFlowHandlers(outFlow);
- Flow faultFlow = moduelmetada.getFaultFlow();
+ Flow faultFlow = moduelmetada.getFaultInFlow();
addFlowHandlers(faultFlow);
engineconfig.addMdoule(moduelmetada);
@@ -513,7 +519,7 @@
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);
@@ -531,6 +537,6 @@
}
return service;
}
-
+*/
}
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentParser.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentParser.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentParser.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/deployment/DeploymentParser.java Mon Apr 18 02:52:19 2005
@@ -363,7 +363,7 @@
axisService.setOutFlow(outFlow);
} else if (IN_FAILTFLOW.equals(ST)) {
Flow faultFlow = processFaultFlow();
- axisService.setFaultFlow(faultFlow);
+ axisService.setFaultInFlow(faultFlow);
} else if (MODULEST.equals(ST)) {
attribCount = pullparser.getAttributeCount();
if (attribCount > 0) {
@@ -715,7 +715,7 @@
module.addParameter(parameter);
} else if (IN_FAILTFLOW.equals(ST)) {
Flow faultFlow = processFaultFlow();
- module.setFaultFlow(faultFlow);
+ module.setFaultInFlow(faultFlow);
} else if (INFLOWST.equals(ST)) {
Flow inFlow = processInFlow();
module.setInFlow(inFlow);
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisModule.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisModule.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisModule.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/AxisModule.java Mon Apr 18 02:52:19 2005
@@ -64,8 +64,12 @@
/**
* @return
*/
- public Flow getFaultFlow() {
- return flowInclude.getFaultFlow();
+ public Flow getFaultInFlow() {
+ return flowInclude.getFaultInFlow();
+ }
+
+ public Flow getFaultOutFlow() {
+ return flowInclude.getFaultOutFlow();
}
/**
@@ -85,8 +89,15 @@
/**
* @param faultFlow
*/
- public void setFaultFlow(Flow faultFlow) {
- flowInclude.setFaultFlow(faultFlow);
+ public void setFaultInFlow(Flow faultFlow) {
+ flowInclude.setFaultInFlow(faultFlow);
+ }
+
+ /**
+ * @param faultFlow
+ */
+ public void setFaultOutFlow(Flow faultFlow) {
+ flowInclude.setFaultOutFlow(faultFlow);
}
/**
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?view=diff&r1=161749&r2=161750
==============================================================================
--- 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 Mon Apr 18 02:52:19 2005
@@ -342,33 +342,45 @@
/*
* (non-Javadoc)
- * @see org.apache.axis.description.FlowInclude#getFaultFlow()
+ * @see org.apache.axis.description.FlowInclude#getFaultInFlow()
*/
/**
- * Method getFaultFlow
+ * Method getFaultInFlow
*
* @return
*/
- public Flow getFaultFlow() {
- return (Flow) this.getComponentProperty(FAULTFLOW_KEY);
+ public Flow getFaultInFlow() {
+ return (Flow) this.getComponentProperty(IN_FAULTFLOW_KEY);
}
/*
* (non-Javadoc)
- * @see org.apache.axis.description.FlowInclude#setFaultFlow(org.apache.axis.description.Flow)
+ * @see org.apache.axis.description.FlowInclude#setFaultInFlow(org.apache.axis.description.Flow)
*/
/**
- * Method setFaultFlow
+ * Method setFaultInFlow
*
* @param faultFlow
*/
- public void setFaultFlow(Flow faultFlow) {
+ public void setFaultInFlow(Flow faultFlow) {
if (faultFlow != null) {
- this.setComponentProperty(FAULTFLOW_KEY, faultFlow);
+ 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 setServiceClass
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/DescriptionConstants.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/DescriptionConstants.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/DescriptionConstants.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/DescriptionConstants.java Mon Apr 18 02:52:19 2005
@@ -84,7 +84,8 @@
/**
* Field FAULTFLOW_KEY
*/
- public static final String FAULTFLOW_KEY = "FAULTFLOW_KEY";
+ public static final String IN_FAULTFLOW_KEY = "IN_FAULTFLOW_KEY";
+ public static final String OUT_FAULTFLOW_KEY = "OUT_FAULTFLOW_KEY";
/**
* Field PHASES_KEY
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowInclude.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowInclude.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowInclude.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowInclude.java Mon Apr 18 02:52:19 2005
@@ -49,16 +49,25 @@
public void setOutFlow(Flow outFlow);
/**
- * Method getFaultFlow
+ * Method getFaultInFlow
*
* @return
*/
- public Flow getFaultFlow();
+ public Flow getFaultInFlow();
/**
- * Method setFaultFlow
+ * Method setFaultInFlow
*
* @param faultFlow
*/
- public void setFaultFlow(Flow faultFlow);
+ public void setFaultInFlow(Flow faultFlow);
+
+ public Flow getFaultOutFlow();
+
+ /**
+ * Method setFaultInFlow
+ *
+ * @param faultFlow
+ */
+ public void setFaultOutFlow(Flow faultFlow);
}
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowIncludeImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowIncludeImpl.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowIncludeImpl.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/FlowIncludeImpl.java Mon Apr 18 02:52:19 2005
@@ -32,15 +32,17 @@
/**
* Field fault
*/
- private Flow fault;
+ private Flow In_fault;
+
+ private Flow Out_fault;
/**
- * Method getFaultFlow
+ * Method getFaultInFlow
*
* @return
*/
- public Flow getFaultFlow() {
- return fault;
+ public Flow getFaultInFlow() {
+ return In_fault;
}
/**
@@ -62,12 +64,20 @@
}
/**
- * Method setFaultFlow
+ * Method setFaultInFlow
*
* @param flow
*/
- public void setFaultFlow(Flow flow) {
- this.fault = flow;
+ public void setFaultInFlow(Flow flow) {
+ this.In_fault = flow;
+ }
+
+ public Flow getFaultOutFlow() {
+ return this.Out_fault; //To change body of implemented methods use File | Settings | File Templates.
+ }
+
+ public void setFaultOutFlow(Flow faultFlow) {
+ this.Out_fault = faultFlow;
}
/**
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/PhasesIncludeImpl.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/PhasesIncludeImpl.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/PhasesIncludeImpl.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/description/PhasesIncludeImpl.java Mon Apr 18 02:52:19 2005
@@ -51,7 +51,7 @@
return inflow;
} else if (flow == EngineConfiguration.OUTFLOW) {
return outflow;
- } else if (flow == EngineConfiguration.FAULTFLOW) {
+ } else if (flow == EngineConfiguration.FAULT_IN_FLOW) {
return faultflow;
} else {
throw new AxisFault("Unknown type flow ");
@@ -70,7 +70,7 @@
inflow = phases;
} else if (flow == EngineConfiguration.OUTFLOW) {
outflow = phases;
- } else if (flow == EngineConfiguration.FAULTFLOW) {
+ } else if (flow == EngineConfiguration.FAULT_IN_FLOW) {
faultflow = phases;
} else {
throw new AxisFault("Unknown type flow ");
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/AxisEngine.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/AxisEngine.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/AxisEngine.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/AxisEngine.java Mon Apr 18 02:52:19 2005
@@ -199,7 +199,7 @@
faultContext.setEnvelope(envelope);
ExecutionChain chain = faultContext.getExecutionChain();
- chain.addPhases(context.getServiceContext().getPhases(EngineConfiguration.FAULTFLOW));
+ chain.addPhases(context.getServiceContext().getPhases(EngineConfiguration.FAULT_IN_FLOW));
chain.invoke(faultContext);
// send the error
TransportSender sender = context.getTransportOut().getSender();
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/EngineConfiguration.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/EngineConfiguration.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/EngineConfiguration.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/engine/EngineConfiguration.java Mon Apr 18 02:52:19 2005
@@ -45,9 +45,11 @@
public static final int OUTFLOW = 10004;
/**
- * Field FAULTFLOW
+ * Field FAULT_IN_FLOW
*/
- public static final int FAULTFLOW = 10005;
+ public static final int FAULT_IN_FLOW = 10005;
+
+ public static final int FAULT_OUT_FLOW = 10006;
/**
* Method getGlobal
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseHolder.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseHolder.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseHolder.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseHolder.java Mon Apr 18 02:52:19 2005
@@ -17,14 +17,10 @@
import java.util.ArrayList;
-import org.apache.axis.description.AxisGlobal;
-import org.apache.axis.description.AxisService;
-import org.apache.axis.description.HandlerMetadata;
-import org.apache.axis.description.PhasesInclude;
-import org.apache.axis.engine.AxisFault;
-import org.apache.axis.engine.EngineConfiguration;
-import org.apache.axis.engine.Handler;
-import org.apache.axis.engine.SimplePhase;
+import org.apache.axis.description.*;
+import org.apache.axis.engine.*;
+import org.apache.axis.context.ServiceContext;
+import org.apache.axis.context.EngineContext;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -52,6 +48,8 @@
*/
private final AxisService service;
+ private ServiceContext serviceContext;
+
private ArrayList inPhases;
private ArrayList outPhases;
private ArrayList faultInPhases;
@@ -65,12 +63,22 @@
* @param registry
* @param serviceIN
*/
- public PhaseHolder(EngineConfiguration registry, AxisService serviceIN) {
+ public PhaseHolder(EngineConfiguration registry, AxisService serviceIN , ServiceContext context) {
this.registry = registry;
this.service = serviceIN;
+ this.serviceContext = context;
+ fillFlowPhases();
+ }
+
+ public PhaseHolder(EngineConfiguration registry) {
+ this.registry = registry;
+ this.service = null;
+ this.serviceContext = null;
fillFlowPhases();
}
+
+
public void setFlowType(int flowType) {
switch (flowType) {
case PhaseMetadata.IN_FLOW:
@@ -83,9 +91,14 @@
phaseholder = outPhases;
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
+ {
+ phaseholder = faultInPhases;
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
- phaseholder = faultPhases;
+ phaseholder = faultOutPhases;
break;
}
}
@@ -110,11 +123,17 @@
PhaseMetadata pm = new PhaseMetadata(name);
outPhases.add(pm);
}
- tempPhases = registry.getFaultPhases();
+ tempPhases = registry.getInFaultPhases();
+ for (int i = 0; i < tempPhases.size(); i++) {
+ String name = (String) tempPhases.get(i);
+ PhaseMetadata pm = new PhaseMetadata(name);
+ faultInPhases.add(pm);
+ }
+ tempPhases = registry.getOutFaultPhases();
for (int i = 0; i < tempPhases.size(); i++) {
String name = (String) tempPhases.get(i);
PhaseMetadata pm = new PhaseMetadata(name);
- faultPhases.add(pm);
+ faultOutPhases.add(pm);
}
}
@@ -237,7 +256,8 @@
}
inChain.add(axisPhase);
}
- service.setPhases(inChain, EngineConfiguration.INFLOW);
+ serviceContext.setPhases(inChain, EngineConfiguration.INFLOW);
+ // service.setPhases(inChain, EngineConfiguration.INFLOW);
break;
}
case PhaseMetadata.OUT_FLOW:
@@ -253,12 +273,13 @@
}
outChain.add(axisPhase);
}
- service.setPhases(outChain, EngineConfiguration.OUTFLOW);
+ //service.setPhases(outChain, EngineConfiguration.OUTFLOW);
+ serviceContext.setPhases(outChain, EngineConfiguration.OUTFLOW);
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
{
- ArrayList faultChain = new ArrayList();
+ ArrayList faultInChain = new ArrayList();
for (int i = 0; i < phaseholder.size(); i++) {
PhaseMetadata phase =
(PhaseMetadata) phaseholder.get(i);
@@ -267,9 +288,27 @@
for (int j = 0; j < handlers.length; j++) {
axisPhase.addHandler(handlers[j].getHandler());
}
- faultChain.add(axisPhase);
+ faultInChain.add(axisPhase);
}
- service.setPhases(faultChain, EngineConfiguration.FAULTFLOW);
+ serviceContext.setPhases(faultInChain, EngineConfiguration.FAULT_IN_FLOW);
+ // service.setPhases(faultInChain, EngineConfiguration.FAULT_IN_FLOW);
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
+ {
+ ArrayList faultOutChain = new ArrayList();
+ for (int i = 0; i < phaseholder.size(); i++) {
+ PhaseMetadata phase =
+ (PhaseMetadata) phaseholder.get(i);
+ SimplePhase axisPhase = new SimplePhase(phase.getName());
+ handlers = phase.getOrderedHandlers();
+ for (int j = 0; j < handlers.length; j++) {
+ axisPhase.addHandler(handlers[j].getHandler());
+ }
+ faultOutChain.add(axisPhase);
+ }
+ serviceContext.setPhases(faultOutChain, EngineConfiguration.FAULT_OUT_FLOW);
+ // service.setPhases(faultOutChain, EngineConfiguration.FAULT_IN_FLOW);
break;
}
}
@@ -348,7 +387,37 @@
trnsport.setPhases(outChain, EngineConfiguration.OUTFLOW);
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
+ {
+ ArrayList faultChain = new ArrayList();
+ for (int i = 0; i < phaseholder.size(); i++) {
+ PhaseMetadata phase =
+ (PhaseMetadata) phaseholder.get(i);
+ SimplePhase axisPhase = new SimplePhase(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, EngineConfiguration.FAULT_IN_FLOW);
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
ArrayList faultChain = new ArrayList();
for (int i = 0; i < phaseholder.size(); i++) {
@@ -375,7 +444,7 @@
}
faultChain.add(axisPhase);
}
- trnsport.setPhases(faultChain, EngineConfiguration.FAULTFLOW);
+ trnsport.setPhases(faultChain, EngineConfiguration.FAULT_OUT_FLOW);
break;
}
}
@@ -388,11 +457,11 @@
/**
* Method buildGlobalChain
*
- * @param axisGlobal
+ * @param engineContext
* @param chainType
* @throws PhaseException
*/
- public void buildGlobalChain(AxisGlobal axisGlobal, int chainType)
+ public void buildGlobalChain(EngineContext engineContext, int chainType)
throws PhaseException {
try {
//OrderThePhases();
@@ -411,7 +480,7 @@
}
inChain.add(axisPhase);
}
- axisGlobal.setPhases(inChain, EngineConfiguration.INFLOW);
+ engineContext.setPhases(inChain, EngineConfiguration.INFLOW);
break;
}
case PhaseMetadata.OUT_FLOW:
@@ -427,10 +496,26 @@
}
outChain.add(axisPhase);
}
- axisGlobal.setPhases(outChain, EngineConfiguration.OUTFLOW);
+ engineContext.setPhases(outChain, EngineConfiguration.OUTFLOW);
+ break;
+ }
+ case PhaseMetadata.FAULT_IN_FLOW:
+ {
+ ArrayList faultChain = new ArrayList();
+ for (int i = 0; i < phaseholder.size(); i++) {
+ PhaseMetadata phase =
+ (PhaseMetadata) phaseholder.get(i);
+ SimplePhase axisPhase = new SimplePhase(phase.getName());
+ handlers = phase.getOrderedHandlers();
+ for (int j = 0; j < handlers.length; j++) {
+ axisPhase.addHandler(handlers[j].getHandler());
+ }
+ faultChain.add(axisPhase);
+ }
+ engineContext.setPhases(faultChain, EngineConfiguration.FAULT_IN_FLOW);
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
ArrayList faultChain = new ArrayList();
for (int i = 0; i < phaseholder.size(); i++) {
@@ -443,7 +528,7 @@
}
faultChain.add(axisPhase);
}
- axisGlobal.setPhases(faultChain, EngineConfiguration.FAULTFLOW);
+ engineContext.setPhases(faultChain, EngineConfiguration.FAULT_OUT_FLOW);
break;
}
}
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseResolver.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseResolver.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseResolver.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/phaseresolver/PhaseResolver.java Mon Apr 18 02:52:19 2005
@@ -32,6 +32,8 @@
import org.apache.axis.description.HandlerMetadata;
import org.apache.axis.engine.AxisFault;
import org.apache.axis.engine.EngineConfiguration;
+import org.apache.axis.context.EngineContext;
+import org.apache.axis.context.ServiceContext;
/**
* Class PhaseResolver
@@ -47,6 +49,8 @@
*/
private AxisService axisService;
+ private ServiceContext serviceContext;
+
/**
* Field phaseHolder
*/
@@ -68,9 +72,10 @@
* @param axisService
*/
public PhaseResolver(EngineConfiguration engineRegistry,
- AxisService axisService) {
+ AxisService axisService,ServiceContext serviceContext) {
this.engineRegistry = engineRegistry;
this.axisService = axisService;
+ this.serviceContext = serviceContext;
}
/**
@@ -121,7 +126,7 @@
* break;
* }
* case 3 : {
- * flow = module.getFaultFlow();
+ * flow = module.getFaultInFlow();
* break;
* }
* }
@@ -158,9 +163,14 @@
flow = module.getOutFlow();
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
{
- flow = module.getFaultFlow();
+ flow = module.getFaultInFlow();
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
+ {
+ flow = module.getFaultOutFlow();
break;
}
}
@@ -187,9 +197,14 @@
flow = axisService.getOutFlow();
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
+ {
+ flow = axisService.getFaultInFlow();
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
- flow = axisService.getFaultFlow();
+ flow = axisService.getFaultOutFlow();
break;
}
}
@@ -204,7 +219,7 @@
allHandlers.add(metadata);
}
}
- phaseHolder = new PhaseHolder(engineRegistry, axisService);
+ phaseHolder = new PhaseHolder(engineRegistry, axisService,serviceContext);
phaseHolder.setFlowType(flowtype);
for (int i = 0; i < allHandlers.size(); i++) {
HandlerMetadata handlerMetaData =
@@ -243,7 +258,7 @@
throws PhaseException {
Flow flow = null;
for (int type = 1; type < 4; type++) {
- phaseHolder = new PhaseHolder(engineRegistry, null);
+ phaseHolder = new PhaseHolder(engineRegistry);
phaseHolder.setFlowType(type);
switch (type) {
case PhaseMetadata.IN_FLOW:
@@ -251,7 +266,7 @@
flow = transport.getInFlow();
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
{
flow = transport.getFaultFlow();
break;
@@ -283,7 +298,7 @@
throws PhaseException {
Flow flow = null;
for (int type = 1; type < 4; type++) {
- phaseHolder = new PhaseHolder(engineRegistry, null);
+ phaseHolder = new PhaseHolder(engineRegistry);
phaseHolder.setFlowType(type);
switch (type) {
case PhaseMetadata.OUT_FLOW:
@@ -291,7 +306,7 @@
flow = transport.getOutFlow();
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
flow = transport.getFaultFlow();
break;
@@ -315,19 +330,20 @@
/**
* Method buildGlobalChains
*
- * @param global
+ * @param engineContext
* @throws AxisFault
* @throws PhaseException
*/
- public void buildGlobalChains(AxisGlobal global)
+ public void buildGlobalChains(EngineContext engineContext)
throws AxisFault, PhaseException {
+ AxisGlobal global =engineContext.getEngineConfig().getGlobal();
List modules = (List) global.getModules();
int count = modules.size();
QName moduleName;
AxisModule module;
Flow flow = null;
for (int type = 1; type < 4; type++) {
- phaseHolder = new PhaseHolder(engineRegistry, null);
+ phaseHolder = new PhaseHolder(engineRegistry);
phaseHolder.setFlowType(type);
for (int intA = 0; intA < count; intA++) {
moduleName = (QName) modules.get(intA);
@@ -343,9 +359,14 @@
flow = module.getOutFlow();
break;
}
- case PhaseMetadata.FAULT_FLOW:
+ case PhaseMetadata.FAULT_IN_FLOW:
+ {
+ flow = module.getFaultInFlow();
+ break;
+ }
+ case PhaseMetadata.FAULT_OUT_FLOW:
{
- flow = module.getFaultFlow();
+ flow = module.getFaultOutFlow();
break;
}
}
@@ -361,7 +382,7 @@
}
}
}
- phaseHolder.buildGlobalChain(global, type);
+ phaseHolder.buildGlobalChain(engineContext, type);
}
}
}
Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis/util/Utils.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis/util/Utils.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis/util/Utils.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis/util/Utils.java Mon Apr 18 02:52:19 2005
@@ -69,8 +69,8 @@
addPhasesToServiceFromFlow(
serviceContext,
Constants.PHASE_SERVICE,
- service.getFaultFlow(),
- EngineConfiguration.FAULTFLOW);
+ service.getFaultInFlow(),
+ EngineConfiguration.FAULT_IN_FLOW);
}
public static AxisService createSimpleService(
Modified: webservices/axis/trunk/java/modules/core/test/org/apache/axis/deployment/BuildERWithDeploymentTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/test/org/apache/axis/deployment/BuildERWithDeploymentTest.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/test/org/apache/axis/deployment/BuildERWithDeploymentTest.java (original)
+++ webservices/axis/trunk/java/modules/core/test/org/apache/axis/deployment/BuildERWithDeploymentTest.java Mon Apr 18 02:52:19 2005
@@ -52,7 +52,7 @@
assertNotNull(service.getName());
assertEquals(service.getStyle(),"rpc");
- Flow flow = service.getFaultFlow();
+ Flow flow = service.getFaultInFlow();
assertTrue(flow.getHandlerCount() > 0);
flow = service.getInFlow();
assertTrue(flow.getHandlerCount() > 0);
Modified: webservices/axis/trunk/java/modules/core/test/org/apache/axis/description/RegistryTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/test/org/apache/axis/description/RegistryTest.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/core/test/org/apache/axis/description/RegistryTest.java (original)
+++ webservices/axis/trunk/java/modules/core/test/org/apache/axis/description/RegistryTest.java Mon Apr 18 02:52:19 2005
@@ -93,10 +93,10 @@
Flow flow3 = new FlowImpl();
flowInclude.setInFlow(flow1);
- flowInclude.setFaultFlow(flow2);
+ flowInclude.setFaultInFlow(flow2);
flowInclude.setOutFlow(flow3);
assertSame(flow1, flowInclude.getInFlow());
- assertSame(flow2, flowInclude.getFaultFlow());
+ assertSame(flow2, flowInclude.getFaultInFlow());
assertSame(flow3, flowInclude.getOutFlow());
}
Modified: webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/MessageWithServerTest.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/MessageWithServerTest.java?view=diff&r1=161749&r2=161750
==============================================================================
--- webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/MessageWithServerTest.java (original)
+++ webservices/axis/trunk/java/modules/samples/test/org/apache/axis/engine/MessageWithServerTest.java Mon Apr 18 02:52:19 2005
@@ -63,11 +63,11 @@
service.setInFlow(new MockFlow("service inflow", 4));
service.setOutFlow(new MockFlow("service outflow", 5));
- service.setFaultFlow(new MockFlow("service faultflow", 1));
+ service.setFaultInFlow(new MockFlow("service faultflow", 1));
AxisModule m1 = new AxisModule(new QName("", "A Mdoule 1"));
m1.setInFlow(new MockFlow("service module inflow", 4));
- m1.setFaultFlow(new MockFlow("service module faultflow", 1));
+ m1.setFaultInFlow(new MockFlow("service module faultflow", 1));
service.addModule(m1.getName());
AxisOperation operation = new AxisOperation(operationName);