Author: veithen
Date: Mon Dec 3 18:34:15 2012
New Revision: 1416630
URL: http://svn.apache.org/viewvc?rev=1416630&view=rev
Log:
Duplicate code reduction.
Modified:
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDArrayMapping.java
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDDeployment.java
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDService.java
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDTypeMapping.java
Modified:
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDArrayMapping.java
URL:
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDArrayMapping.java?rev=1416630&r1=1416629&r2=1416630&view=diff
==============================================================================
---
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDArrayMapping.java
(original)
+++
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDArrayMapping.java
Mon Dec 3 18:34:15 2012
@@ -21,6 +21,8 @@ import org.w3c.dom.Attr;
import org.w3c.dom.Element;
import org.xml.sax.helpers.AttributesImpl;
import org.apache.axis.encoding.SerializationContext;
+import org.apache.axis.encoding.SerializerFactory;
+import org.apache.axis.encoding.ser.ArraySerializerFactory;
import org.apache.axis.utils.XMLUtils;
@@ -82,6 +84,12 @@ public class WSDDArrayMapping extends WS
context.startElement(QNAME_ARRAYMAPPING, attrs);
context.endElement();
}
+
+ void setupSerializer(SerializerFactory ser) {
+ if (ser instanceof ArraySerializerFactory) {
+ ((ArraySerializerFactory)ser).setComponentType(getInnerType());
+ }
+ }
}
Modified:
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDDeployment.java
URL:
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDDeployment.java?rev=1416630&r1=1416629&r2=1416630&view=diff
==============================================================================
---
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDDeployment.java
(original)
+++
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDDeployment.java
Mon Dec 3 18:34:15 2012
@@ -21,15 +21,10 @@ import org.apache.axis.Constants;
import org.apache.axis.Handler;
import org.apache.axis.WSDDEngineConfiguration;
import org.apache.axis.components.logger.LogFactory;
-import org.apache.axis.encoding.DeserializerFactory;
import org.apache.axis.encoding.SerializationContext;
-import org.apache.axis.encoding.SerializerFactory;
import org.apache.axis.encoding.TypeMapping;
import org.apache.axis.encoding.TypeMappingRegistry;
import org.apache.axis.encoding.TypeMappingRegistryImpl;
-import org.apache.axis.encoding.ser.ArraySerializerFactory;
-import org.apache.axis.encoding.ser.BaseDeserializerFactory;
-import org.apache.axis.encoding.ser.BaseSerializerFactory;
import org.apache.axis.handlers.soap.SOAPService;
import org.apache.axis.utils.Messages;
import org.apache.commons.logging.Log;
@@ -264,53 +259,11 @@ public class WSDDDeployment
private void deployMapping(WSDDTypeMapping mapping)
throws WSDDException {
- try {
- String encodingStyle = mapping.getEncodingStyle();
- if (encodingStyle == null) {
- encodingStyle = Constants.URI_DEFAULT_SOAP_ENC;
- }
- TypeMapping tm = tmr.getOrMakeTypeMapping(encodingStyle);
- SerializerFactory ser = null;
- DeserializerFactory deser = null;
- // Try to construct a serializerFactory by introspecting for the
- // following:
- // public static create(Class javaType, QName xmlType)
- // public <constructor>(Class javaType, QName xmlType)
- // public <constructor>()
- //
- // The BaseSerializerFactory createFactory() method is a utility
- // that does this for us.
- //log.debug("start creating sf and df");
- if (mapping.getSerializerName() != null &&
- !mapping.getSerializerName().equals("")) {
- ser =
BaseSerializerFactory.createFactory(mapping.getSerializer(),
- mapping.getLanguageSpecificType(),
- mapping.getQName());
- }
-
- if ((mapping instanceof WSDDArrayMapping) && (ser instanceof
ArraySerializerFactory)) {
- WSDDArrayMapping am = (WSDDArrayMapping) mapping;
- ArraySerializerFactory factory = (ArraySerializerFactory) ser;
- factory.setComponentType(am.getInnerType());
- }
-
- //log.debug("set ser factory");
-
- if (mapping.getDeserializerName() != null &&
- !mapping.getDeserializerName().equals("")) {
- deser =
BaseDeserializerFactory.createFactory(mapping.getDeserializer(),
- mapping.getLanguageSpecificType(),
- mapping.getQName());
- }
- //log.debug("set dser factory");
- tm.register(mapping.getLanguageSpecificType(), mapping.getQName(),
ser, deser);
- //log.debug("registered");
- } catch (ClassNotFoundException e) {
- log.error(Messages.getMessage("unabletoDeployTypemapping00",
mapping.getQName().toString()), e);
- throw new WSDDNonFatalException(e);
- } catch (Exception e) {
- throw new WSDDException(e);
+ String encodingStyle = mapping.getEncodingStyle();
+ if (encodingStyle == null) {
+ encodingStyle = Constants.URI_DEFAULT_SOAP_ENC;
}
+ mapping.registerTo(tmr.getOrMakeTypeMapping(encodingStyle));
}
public void writeToContext(SerializationContext context)
Modified:
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDService.java
URL:
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDService.java?rev=1416630&r1=1416629&r2=1416630&view=diff
==============================================================================
---
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDService.java
(original)
+++
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDService.java
Mon Dec 3 18:34:15 2012
@@ -29,15 +29,10 @@ import org.apache.axis.constants.Style;
import org.apache.axis.constants.Use;
import org.apache.axis.description.JavaServiceDesc;
import org.apache.axis.description.ServiceDesc;
-import org.apache.axis.encoding.DeserializerFactory;
import org.apache.axis.encoding.SerializationContext;
-import org.apache.axis.encoding.SerializerFactory;
import org.apache.axis.encoding.TypeMapping;
import org.apache.axis.encoding.TypeMappingRegistry;
import org.apache.axis.encoding.TypeMappingRegistryImpl;
-import org.apache.axis.encoding.ser.ArraySerializerFactory;
-import org.apache.axis.encoding.ser.BaseDeserializerFactory;
-import org.apache.axis.encoding.ser.BaseSerializerFactory;
import org.apache.axis.handlers.HandlerInfoChainFactory;
import org.apache.axis.handlers.soap.SOAPService;
import org.apache.axis.providers.java.JavaProvider;
@@ -515,53 +510,16 @@ public class WSDDService
if (tmr == null) {
createTMR();
}
- try {
- // Get the encoding style from the mapping, if it isn't set
- // use the use of the service to map doc/lit or rpc/enc
- String encodingStyle = mapping.getEncodingStyle();
- if (encodingStyle == null) {
- encodingStyle = use.getEncoding();
- }
- TypeMapping tm = tmr.getOrMakeTypeMapping(encodingStyle);
- desc.setTypeMappingRegistry(tmr);
- desc.setTypeMapping(tm);
-
- SerializerFactory ser = null;
- DeserializerFactory deser = null;
-
- // Try to construct a serializerFactory by introspecting for the
- // following:
- // public static create(Class javaType, QName xmlType)
- // public <constructor>(Class javaType, QName xmlType)
- // public <constructor>()
- //
- // The BaseSerializerFactory createFactory() method is a utility
- // that does this for us.
- if (mapping.getSerializerName() != null &&
- !mapping.getSerializerName().equals("")) {
- ser =
BaseSerializerFactory.createFactory(mapping.getSerializer(),
-
mapping.getLanguageSpecificType(),
- mapping.getQName());
- }
- if (mapping instanceof WSDDArrayMapping && ser instanceof
ArraySerializerFactory) {
- WSDDArrayMapping am = (WSDDArrayMapping) mapping;
- ArraySerializerFactory factory = (ArraySerializerFactory) ser;
- factory.setComponentType(am.getInnerType());
- }
-
- if (mapping.getDeserializerName() != null &&
- !mapping.getDeserializerName().equals("")) {
- deser =
BaseDeserializerFactory.createFactory(mapping.getDeserializer(),
-
mapping.getLanguageSpecificType(),
- mapping.getQName());
- }
- tm.register( mapping.getLanguageSpecificType(),
mapping.getQName(), ser, deser);
- } catch (ClassNotFoundException e) {
- log.error(Messages.getMessage("unabletoDeployTypemapping00",
mapping.getQName().toString()), e);
- throw new WSDDNonFatalException(e);
- } catch (Exception e) {
- throw new WSDDException(e);
+ // Get the encoding style from the mapping, if it isn't set
+ // use the use of the service to map doc/lit or rpc/enc
+ String encodingStyle = mapping.getEncodingStyle();
+ if (encodingStyle == null) {
+ encodingStyle = use.getEncoding();
}
+ TypeMapping tm = tmr.getOrMakeTypeMapping(encodingStyle);
+ desc.setTypeMappingRegistry(tmr);
+ desc.setTypeMapping(tm);
+ mapping.registerTo(tm);
}
/**
Modified:
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDTypeMapping.java
URL:
http://svn.apache.org/viewvc/axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDTypeMapping.java?rev=1416630&r1=1416629&r2=1416630&view=diff
==============================================================================
---
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDTypeMapping.java
(original)
+++
axis/axis1/java/trunk/axis-rt-core/src/main/java/org/apache/axis/deployment/wsdd/WSDDTypeMapping.java
Mon Dec 3 18:34:15 2012
@@ -16,11 +16,18 @@
package org.apache.axis.deployment.wsdd;
import org.apache.axis.Constants;
+import org.apache.axis.components.logger.LogFactory;
+import org.apache.axis.encoding.DeserializerFactory;
import org.apache.axis.encoding.SerializationContext;
+import org.apache.axis.encoding.SerializerFactory;
+import org.apache.axis.encoding.TypeMapping;
+import org.apache.axis.encoding.ser.BaseDeserializerFactory;
+import org.apache.axis.encoding.ser.BaseSerializerFactory;
import org.apache.axis.utils.ClassUtils;
import org.apache.axis.utils.JavaUtils;
import org.apache.axis.utils.Messages;
import org.apache.axis.utils.XMLUtils;
+import org.apache.commons.logging.Log;
import org.w3c.dom.Attr;
import org.w3c.dom.Element;
import org.xml.sax.helpers.AttributesImpl;
@@ -28,13 +35,14 @@ import org.xml.sax.helpers.AttributesImp
import javax.xml.namespace.QName;
import java.io.IOException;
-
/**
*
*/
public class WSDDTypeMapping
extends WSDDElement
{
+ private static final Log log =
LogFactory.getLog(WSDDTypeMapping.class.getName());
+
protected QName qname = null;
protected String serializer = null;
protected String deserializer = null;
@@ -280,6 +288,46 @@ public class WSDDTypeMapping
{
deserializer = deser;
}
+
+ void registerTo(TypeMapping tm) throws WSDDException {
+ try {
+ SerializerFactory ser = null;
+ DeserializerFactory deser = null;
+
+ // Try to construct a serializerFactory by introspecting for the
+ // following:
+ // public static create(Class javaType, QName xmlType)
+ // public <constructor>(Class javaType, QName xmlType)
+ // public <constructor>()
+ //
+ // The BaseSerializerFactory createFactory() method is a utility
+ // that does this for us.
+ if (getSerializerName() != null &&
+ !getSerializerName().equals("")) {
+ ser = BaseSerializerFactory.createFactory(getSerializer(),
+
getLanguageSpecificType(),
+ getQName());
+ }
+
+ setupSerializer(ser);
+
+ if (getDeserializerName() != null &&
+ !getDeserializerName().equals("")) {
+ deser =
BaseDeserializerFactory.createFactory(getDeserializer(),
+
getLanguageSpecificType(),
+ getQName());
+ }
+ tm.register(getLanguageSpecificType(), getQName(), ser, deser);
+ } catch (ClassNotFoundException e) {
+ log.error(Messages.getMessage("unabletoDeployTypemapping00",
getQName().toString()), e);
+ throw new WSDDNonFatalException(e);
+ } catch (Exception e) {
+ throw new WSDDException(e);
+ }
+ }
+
+ void setupSerializer(SerializerFactory ser) {
+ }
}