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 sc...@apache.org on 2007/04/10 19:03:27 UTC
svn commit: r527202 - in /webservices/axis2/trunk/java/modules:
jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/
jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/
jaxws/src/org/apache/axis2/jaxws/server/ jaxws/src/org/apache/axis2...
Author: scheu
Date: Tue Apr 10 10:03:24 2007
New Revision: 527202
URL: http://svn.apache.org/viewvc?view=rev&rev=527202
Log:
AXIS2-2493
Contributor:Rich Scheuerle
Performance Low Hanging Fruit from IBM performance analysis.
Modified:
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/MethodMarshallerUtils.java
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PackageSetBuilder.java
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PropertyDescriptorMapBuilder.java
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/EndpointController.java
webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/dispatcher/JavaBeanDispatcher.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderUtils.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/validator/ServiceDescriptionValidator.java
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/MethodMarshallerUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/MethodMarshallerUtils.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/MethodMarshallerUtils.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/marshaller/impl/alt/MethodMarshallerUtils.java Tue Apr 10 10:03:24 2007
@@ -875,8 +875,7 @@
static <T> Holder<T> createHolder(Class paramType, T value)
throws IllegalAccessException, InstantiationException, ClassNotFoundException {
if (Holder.class.isAssignableFrom(paramType)) {
- Class holderClazz = loadClass(paramType.getName());
- Holder<T> holder = (Holder<T>)holderClazz.newInstance();
+ Holder holder = (Holder) paramType.newInstance();
holder.value = value;
return holder;
}
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PackageSetBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PackageSetBuilder.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PackageSetBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PackageSetBuilder.java Tue Apr 10 10:03:24 2007
@@ -49,6 +49,7 @@
import java.net.URL;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
+import java.util.Collection;
import java.util.Set;
import java.util.TreeSet;
@@ -94,10 +95,10 @@
//read wsdlLocation from @WebService Annotation.
ServiceDescriptionWSDL sdw = (ServiceDescriptionWSDL)serviceDesc;
Definition wsdlDefinition = sdw.getWSDLDefinition();
- EndpointDescription[] endpointDescs = serviceDesc.getEndpointDescriptions();
+ Collection<EndpointDescription> endpointDescs = serviceDesc.getEndpointDescriptions_AsCollection();
if (endpointDescs != null) {
- for (int i = 0; i < endpointDescs.length; i++) {
- EndpointDescription ed = (EndpointDescription)endpointDescs[i];
+ for (EndpointDescription ed:endpointDescs) {
+
if (wsdlDefinition == null) {
// TODO I don't think we should be trying to load the wsdlDefinition here.
@@ -131,12 +132,12 @@
public static TreeSet<String> getPackagesFromAnnotations(ServiceDescription serviceDesc,
MarshalServiceRuntimeDescription msrd) {
TreeSet<String> set = new TreeSet<String>();
- EndpointDescription[] endpointDescs = serviceDesc.getEndpointDescriptions();
-
+ Collection<EndpointDescription> endpointDescs = serviceDesc.getEndpointDescriptions_AsCollection();
+
// Build a set of packages from all of the endpoints
if (endpointDescs != null) {
- for (int i = 0; i < endpointDescs.length; i++) {
- set.addAll(getPackagesFromAnnotations(endpointDescs[i], msrd));
+ for (EndpointDescription endpointDesc: endpointDescs) {
+ set.addAll(getPackagesFromAnnotations(endpointDesc, msrd));
}
}
return set;
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PropertyDescriptorMapBuilder.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PropertyDescriptorMapBuilder.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PropertyDescriptorMapBuilder.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/runtime/description/marshal/impl/PropertyDescriptorMapBuilder.java Tue Apr 10 10:03:24 2007
@@ -32,6 +32,7 @@
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
+import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@@ -54,21 +55,26 @@
* @param ap ArtifactProcessor which found the artifact classes
* @return PropertyDescriptor Map
*/
- public static Map<Class, Map<String, PropertyDescriptorPlus>> getPropertyDescMaps(
+ /**
+ * @param serviceDescription ServiceDescription
+ * @param ap ArtifactProcessor which found the artifact classes
+ * @return PropertyDescriptor Map
+ */
+ public static Map<Class,Map<String, PropertyDescriptorPlus>> getPropertyDescMaps(
ServiceDescription serviceDesc,
ArtifactProcessor ap) {
- Map<Class, Map<String, PropertyDescriptorPlus>> map =
- new HashMap<Class, Map<String, PropertyDescriptorPlus>>();
- EndpointDescription[] endpointDescs = serviceDesc.getEndpointDescriptions();
-
+ Map<Class,Map<String, PropertyDescriptorPlus>> map = new HashMap<Class,Map<String, PropertyDescriptorPlus>>();
+ Collection<EndpointDescription> endpointDescs = serviceDesc.getEndpointDescriptions_AsCollection();
+
// Build a set of packages from all of the endpoints
if (endpointDescs != null) {
- for (int i = 0; i < endpointDescs.length; i++) {
- getPropertyDescMaps(endpointDescs[i], ap, map);
+ for (EndpointDescription ed:endpointDescs) {
+ getPropertyDescMaps(ed, ap, map);
}
}
return map;
}
+
/**
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/EndpointController.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/EndpointController.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/EndpointController.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/EndpointController.java Tue Apr 10 10:03:24 2007
@@ -57,6 +57,7 @@
import java.io.StringReader;
import java.security.PrivilegedActionException;
import java.security.PrivilegedExceptionAction;
+import java.util.Collection;
/**
* The EndpointController is the server side equivalent to the InvocationController on the client
@@ -292,11 +293,12 @@
private boolean bindingTypesMatch(MessageContext requestMsgCtx,
ServiceDescription serviceDesc) {
// compare soap versions and respond appropriately under SOAP 1.2 Appendix 'A'
- EndpointDescription[] eds = serviceDesc.getEndpointDescriptions();
+ Collection<EndpointDescription> eds = serviceDesc.getEndpointDescriptions_AsCollection();
// dispatch endpoints do not have SEIs, so watch out for null or empty array
- if ((eds != null) && (eds.length > 0)) {
+ if ((eds != null) && (eds.size() > 0)) {
+ EndpointDescription ed = eds.iterator().next();
Protocol protocol = requestMsgCtx.getMessage().getProtocol();
- String endpointBindingType = eds[0].getBindingType();
+ String endpointBindingType = ed.getBindingType();
if (protocol.equals(Protocol.soap11)) {
return (SOAPBinding.SOAP11HTTP_BINDING.equalsIgnoreCase(endpointBindingType)) ||
(SOAPBinding.SOAP11HTTP_MTOM_BINDING.equalsIgnoreCase(endpointBindingType));
Modified: webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/dispatcher/JavaBeanDispatcher.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/dispatcher/JavaBeanDispatcher.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/dispatcher/JavaBeanDispatcher.java (original)
+++ webservices/axis2/trunk/java/modules/jaxws/src/org/apache/axis2/jaxws/server/dispatcher/JavaBeanDispatcher.java Tue Apr 10 10:03:24 2007
@@ -189,19 +189,6 @@
return op;
}
- /*
- private ServiceDescription getServiceDescription(MessageContext mc){
- return mc.getServiceDescription();
- }
-
- private EndpointDescription getEndpointDescription(MessageContext mc){
- ServiceDescription sd = mc.getServiceDescription();
- EndpointDescription[] eds = sd.getEndpointDescriptions();
- EndpointDescription ed = eds[0];
- return ed;
- }
- */
-
private MethodMarshaller getMethodMarshaller(Protocol protocol,
OperationDescription operationDesc) {
javax.jws.soap.SOAPBinding.Style styleOnSEI =
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderUtils.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderUtils.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderUtils.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/builder/DescriptionBuilderUtils.java Tue Apr 10 10:03:24 2007
@@ -136,9 +136,9 @@
static boolean isHolderType(String checkType) {
boolean isHolder = false;
if (checkType != null) {
- String rawType = getRawType(checkType);
- if (rawType != null && rawType.equals(JAXWS_HOLDER_CLASS)) {
- isHolder = true;
+ if (checkType.startsWith(JAXWS_HOLDER_CLASS)) {
+ isHolder = checkType.length() == JAXWS_HOLDER_CLASS.length() ||
+ checkType.charAt(JAXWS_HOLDER_CLASS.length()) == '<';
}
}
return isHolder;
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/impl/ServiceDescriptionImpl.java Tue Apr 10 10:03:24 2007
@@ -1173,8 +1173,8 @@
// Go through the list of Endpoints that have been created and add any
// not already in the list. This will include ports added to the Service
// via getPort(...) and addPort(...)
- EndpointDescription[] endpointDescArray = getEndpointDescriptions();
- for (EndpointDescription endpointDesc : endpointDescArray) {
+ Collection<EndpointDescription> endpointDescs = getEndpointDescriptions_AsCollection();
+ for (EndpointDescription endpointDesc : endpointDescs) {
QName endpointPortQName = endpointDesc.getPortQName();
if (!portList.contains(endpointPortQName)) {
portList.add(endpointPortQName);
@@ -1272,11 +1272,12 @@
// string.append("ConfigurationContext: " + getAxisConfigContext());
// EndpointDescriptions
string.append(newline);
- EndpointDescription[] endpointDescs = getEndpointDescriptions();
+ Collection<EndpointDescription> endpointDescs = getEndpointDescriptions_AsCollection();
if (endpointDescs == null) {
string.append("EndpointDescription array is null");
- } else {
- string.append("Number of EndpointDescrptions: " + endpointDescs.length);
+ }
+ else {
+ string.append("Number of EndpointDescrptions: " + endpointDescs.size());
string.append(newline);
for (EndpointDescription endpointDesc : endpointDescs) {
string.append(endpointDesc.toString());
Modified: webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/validator/ServiceDescriptionValidator.java
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/validator/ServiceDescriptionValidator.java?view=diff&rev=527202&r1=527201&r2=527202
==============================================================================
--- webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/validator/ServiceDescriptionValidator.java (original)
+++ webservices/axis2/trunk/java/modules/metadata/src/org/apache/axis2/jaxws/description/validator/ServiceDescriptionValidator.java Tue Apr 10 10:03:24 2007
@@ -18,6 +18,8 @@
*/
package org.apache.axis2.jaxws.description.validator;
+import java.util.Collection;
+
import org.apache.axis2.jaxws.description.EndpointDescription;
import org.apache.axis2.jaxws.description.ServiceDescription;
import org.apache.axis2.jaxws.description.ServiceDescriptionJava;
@@ -60,10 +62,10 @@
private boolean validateEndpointDescriptions() {
boolean areAllValid = true;
// Validate all the Endpoints that were created under this Service Description
- EndpointDescription[] endpointDescArray = serviceDesc.getEndpointDescriptions();
- for (EndpointDescription endpointDesc : endpointDescArray) {
- EndpointDescriptionValidator endpointValidator =
- new EndpointDescriptionValidator(endpointDesc);
+ Collection<EndpointDescription> endpointDescs = serviceDesc.getEndpointDescriptions_AsCollection();
+ for (EndpointDescription endpointDesc:endpointDescs) {
+ EndpointDescriptionValidator endpointValidator = new EndpointDescriptionValidator(endpointDesc);
+
boolean isEndpointValid = endpointValidator.validate();
if (!isEndpointValid) {
addValidationFailure(endpointValidator, "Endpoint failed validation");
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org