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 di...@apache.org on 2005/01/19 22:04:22 UTC
cvs commit: ws-axis/java/test/servicedesc TestServiceDesc.java
dims 2005/01/19 13:04:22
Modified: java/src/org/apache/axis/wsdl/fromJava Emitter.java
java/src/org/apache/axis/wsdl/toJava
JavaGeneratorFactory.java
java/src/org/apache/axis/description JavaServiceDesc.java
java/src/org/apache/axis/i18n resource.properties
java/src/org/apache/axis/handlers/soap SOAPService.java
java/test/encoding TestArrayListConversions.java
java/test/soap12 TestRPC.java
java/test/servicedesc TestServiceDesc.java
Log:
Reduce the # of places Default***TypeMappingImpl's are created.
Note:
- Am not done cleaning up yet :)
Revision Changes Path
1.136 +1 -6 ws-axis/java/src/org/apache/axis/wsdl/fromJava/Emitter.java
Index: Emitter.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/fromJava/Emitter.java,v
retrieving revision 1.135
retrieving revision 1.136
diff -u -r1.135 -r1.136
--- Emitter.java 18 Jan 2005 03:38:03 -0000 1.135
+++ Emitter.java 19 Jan 2005 21:04:22 -0000 1.136
@@ -2523,12 +2523,7 @@
*/
public TypeMapping getDefaultTypeMapping() {
if (defaultTM == null) {
- if (use == Use.ENCODED) {
- // Use the one with SOAP encoded types
- defaultTM = DefaultSOAPEncodingTypeMappingImpl.createWithDelegate();
- } else {
- defaultTM = DefaultTypeMappingImpl.getSingleton();
- }
+ throw new RuntimeException(Messages.getMessage("noDefaultTypeMapping00"));
}
return defaultTM;
}
1.63 +1 -5 ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaGeneratorFactory.java
Index: JavaGeneratorFactory.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/wsdl/toJava/JavaGeneratorFactory.java,v
retrieving revision 1.62
retrieving revision 1.63
diff -u -r1.62 -r1.63
--- JavaGeneratorFactory.java 15 Jan 2005 13:33:41 -0000 1.62
+++ JavaGeneratorFactory.java 19 Jan 2005 21:04:22 -0000 1.63
@@ -1565,10 +1565,6 @@
* @return
*/
public BaseTypeMapping getBaseTypeMapping() {
-
- final TypeMapping defaultTM = (emitter != null) ? emitter.getDefaultTypeMapping() :
- DefaultTypeMappingImpl.getSingleton();
-
if (btm == null) {
btm = new BaseTypeMapping() {
@@ -1578,7 +1574,7 @@
new javax.xml.namespace.QName(qNameIn.getNamespaceURI(),
qNameIn.getLocalPart());
Class cls =
- defaultTM.getClassForQName(qName);
+ emitter.getDefaultTypeMapping().getClassForQName(qName);
if (cls == null) {
return null;
1.19 +10 -32 ws-axis/java/src/org/apache/axis/description/JavaServiceDesc.java
Index: JavaServiceDesc.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/description/JavaServiceDesc.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- JavaServiceDesc.java 10 Jan 2005 19:02:30 -0000 1.18
+++ JavaServiceDesc.java 19 Jan 2005 21:04:22 -0000 1.19
@@ -140,12 +140,7 @@
private ArrayList completedNames = new ArrayList();
/** Our typemapping for resolving Java<->XML type issues */
- private TypeMapping tm = DefaultSOAPEncodingTypeMappingImpl.createWithDelegate();
-
- // If someone has explicitly set the type mapping, don't mess with it
- // when use is set.
- private boolean tmSet = false;
-
+ private TypeMapping tm = null;
private TypeMappingRegistry tmr = null;
private boolean haveAllSkeletonMethods = false;
@@ -170,16 +165,6 @@
if (!useSet) {
// Use hasn't been explicitly set, so track style
use = style == Style.RPC ? Use.ENCODED : Use.LITERAL;
-
- // If we haven't been given an explicit type mapping, make
- // sure we have the right one for the use
- if (!tmSet) {
- if (use == Use.ENCODED && ! (tm instanceof DefaultSOAPEncodingTypeMappingImpl)) {
- tm = DefaultSOAPEncodingTypeMappingImpl.createWithDelegate();
- } else {
- tm = DefaultTypeMappingImpl.getSingleton();
- }
- }
}
}
@@ -195,16 +180,6 @@
public void setUse(Use use) {
useSet = true;
this.use = use;
-
- // If we haven't been given an explicit type mapping, make
- // sure we have the right one for the use
- if (!tmSet) {
- if (use == Use.ENCODED && ! (tm instanceof DefaultSOAPEncodingTypeMappingImpl)) {
- tm = DefaultSOAPEncodingTypeMappingImpl.createWithDelegate();
- } else {
- tm = DefaultTypeMappingImpl.getSingleton();
- }
- }
}
/**
@@ -314,11 +289,13 @@
}
public TypeMapping getTypeMapping() {
+ if(tm == null) {
+ throw new RuntimeException(Messages.getMessage("noDefaultTypeMapping00"));
+ }
return tm;
}
public void setTypeMapping(TypeMapping tm) {
- tmSet = true;
this.tm = tm;
}
@@ -689,7 +666,7 @@
// the Method parameter javaType because
// the ParameterDesc is being constructed
// by introspecting the Method.
- typeQName = tm.getTypeQName(actualType);
+ typeQName = getTypeMapping().getTypeQName(actualType);
param.setTypeQName(typeQName);
} else {
// A type qname is available.
@@ -704,7 +681,7 @@
paramClass = JavaUtils.getHolderValueType(paramClass);
}
if (paramClass == null) {
- paramClass = tm.getClassForQName(param.getTypeQName());
+ paramClass = getTypeMapping().getClassForQName(param.getTypeQName());
}
if (paramClass != null) {
@@ -754,7 +731,7 @@
QName returnType = oper.getReturnType();
if (returnType == null) {
- oper.setReturnType(tm.getTypeQName(returnClass));
+ oper.setReturnType(getTypeMapping().getTypeQName(returnClass));
}
// Do the faults
@@ -1271,6 +1248,7 @@
private QName getTypeQName(Class javaClass) {
QName typeQName;
+ TypeMapping tm = getTypeMapping();
if (style == Style.RPC) {
typeQName = tm.getTypeQName(javaClass);
} else {
@@ -1350,7 +1328,7 @@
// XMLType
QName xmlType = fault.getXmlType();
if (xmlType == null) {
- fault.setXmlType(tm.getTypeQName(ex));
+ fault.setXmlType(getTypeMapping().getTypeQName(ex));
}
// Name and Class Name
@@ -1369,7 +1347,7 @@
// We add a single parameter which points to the type
if (fault.getParameters() == null) {
if (xmlType == null) {
- xmlType = tm.getTypeQName(ex);
+ xmlType = getTypeMapping().getTypeQName(ex);
}
QName qname = fault.getQName();
if (qname == null) {
1.107 +3 -1 ws-axis/java/src/org/apache/axis/i18n/resource.properties
Index: resource.properties
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/i18n/resource.properties,v
retrieving revision 1.106
retrieving revision 1.107
diff -u -r1.106 -r1.107
--- resource.properties 18 Jan 2005 07:46:35 -0000 1.106
+++ resource.properties 19 Jan 2005 21:04:22 -0000 1.107
@@ -1261,4 +1261,6 @@
Registrar.cantregister=Unable to initialize commons-modeler Registry.
optionJaxrpc=Maps XML Schema types to Java types instead of the custom Axis types in org.apache.axis.types, according to JAX-RPC 1.1.
-handlerInfoChainNoClass00=''HandlerInfoChain'' class not found: ''{0}''
\ No newline at end of file
+handlerInfoChainNoClass00=''HandlerInfoChain'' class not found: ''{0}''
+
+noDefaultTypeMapping00=Default TypeMapping has not been specified
\ No newline at end of file
1.123 +5 -1 ws-axis/java/src/org/apache/axis/handlers/soap/SOAPService.java
Index: SOAPService.java
===================================================================
RCS file: /home/cvs/ws-axis/java/src/org/apache/axis/handlers/soap/SOAPService.java,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -r1.122 -r1.123
--- SOAPService.java 18 Aug 2004 16:16:43 -0000 1.122
+++ SOAPService.java 19 Jan 2005 21:04:22 -0000 1.123
@@ -28,6 +28,7 @@
import org.apache.axis.description.JavaServiceDesc;
import org.apache.axis.description.ServiceDesc;
import org.apache.axis.encoding.TypeMappingRegistry;
+import org.apache.axis.encoding.TypeMapping;
import org.apache.axis.enum.Style;
import org.apache.axis.enum.Use;
import org.apache.axis.handlers.HandlerChainImpl;
@@ -224,7 +225,9 @@
this.engine = engine;
((LockableHashtable)options).setParent(engine.getOptions());
- getTypeMappingRegistry().delegate(engine.getTypeMappingRegistry());
+ TypeMappingRegistry tmr = engine.getTypeMappingRegistry();
+ serviceDescription.setTypeMapping((TypeMapping)tmr.getDefaultTypeMapping());
+ getTypeMappingRegistry().delegate(tmr);
}
public AxisEngine getEngine() {
@@ -294,6 +297,7 @@
return;
}
this.serviceDescription = serviceDescription;
+ serviceDescription.setTypeMapping((TypeMapping)this.getTypeMappingRegistry().getDefaultTypeMapping());
}
public void setPropertyParent(Hashtable parent)
1.24 +1 -0 ws-axis/java/test/encoding/TestArrayListConversions.java
Index: TestArrayListConversions.java
===================================================================
RCS file: /home/cvs/ws-axis/java/test/encoding/TestArrayListConversions.java,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- TestArrayListConversions.java 11 Dec 2002 22:40:15 -0000 1.23
+++ TestArrayListConversions.java 19 Jan 2005 21:04:22 -0000 1.24
@@ -56,6 +56,7 @@
transport = new LocalTransport(server);
SOAPService service = new SOAPService(new RPCProvider());
+ service.setEngine(server);
service.setOption("className", "test.encoding.TestArrayListConversions");
service.setOption("allowedMethods", "*");
1.7 +1 -0 ws-axis/java/test/soap12/TestRPC.java
Index: TestRPC.java
===================================================================
RCS file: /home/cvs/ws-axis/java/test/soap12/TestRPC.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- TestRPC.java 8 Jul 2004 08:51:58 -0000 1.6
+++ TestRPC.java 19 Jan 2005 21:04:22 -0000 1.7
@@ -43,6 +43,7 @@
LocalTransport transport = new LocalTransport(server);
SOAPService service = new SOAPService(new RPCProvider());
+ service.setEngine(server);
service.setOption("className", "test.soap12.Echo");
service.setOption("allowedMethods", "*");
service.setOption("use", Use.ENCODED);
1.2 +2 -0 ws-axis/java/test/servicedesc/TestServiceDesc.java
Index: TestServiceDesc.java
===================================================================
RCS file: /home/cvs/ws-axis/java/test/servicedesc/TestServiceDesc.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TestServiceDesc.java 5 Jan 2005 06:17:42 -0000 1.1
+++ TestServiceDesc.java 19 Jan 2005 21:04:22 -0000 1.2
@@ -21,6 +21,7 @@
import org.apache.axis.description.JavaServiceDesc;
import org.apache.axis.description.OperationDesc;
+import org.apache.axis.encoding.DefaultTypeMappingImpl;
import javax.xml.namespace.QName;
@@ -36,6 +37,7 @@
public void testFaultSynch() throws Exception {
JavaServiceDesc desc = new JavaServiceDesc();
+ desc.setTypeMapping(DefaultTypeMappingImpl.getSingleton());
desc.loadServiceDescByIntrospection(ServiceClass.class);