Author: gnodet
Date: Fri Jul 18 07:53:37 2008
New Revision: 677921
URL: http://svn.apache.org/viewvc?rev=677921&view=rev
Log:
Avoid unneeded QName creations, avoid possible NPE
Modified:
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/interceptors/jbi/JbiInWsdl1Interceptor.java
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/util/stax/StaxSource.java
Modified:
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/interceptors/jbi/JbiInWsdl1Interceptor.java
URL:
http://svn.apache.org/viewvc/servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/interceptors/jbi/JbiInWsdl1Interceptor.java?rev=677921&r1=677920&r2=677921&view=diff
==============================================================================
---
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/interceptors/jbi/JbiInWsdl1Interceptor.java
(original)
+++
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/interceptors/jbi/JbiInWsdl1Interceptor.java
Fri Jul 18 07:53:37 2008
@@ -319,15 +319,46 @@
}
public String getLocalName() {
- return getName().getLocalPart();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ case STATE_END_ELEMENT_WRAPPER:
+ return JbiConstants.WSDL11_WRAPPER_MESSAGE_LOCALNAME;
+ case STATE_START_ELEMENT_PART:
+ case STATE_END_ELEMENT_PART:
+ return JbiConstants.WSDL11_WRAPPER_PART_LOCALNAME;
+ case STATE_RUN_PART:
+ return parts.get(part).get(reader).getLocalName();
+ default:
+ throw new IllegalStateException();
+ }
}
public String getNamespaceURI() {
- return getName().getNamespaceURI();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ case STATE_END_ELEMENT_WRAPPER:
+ case STATE_START_ELEMENT_PART:
+ case STATE_END_ELEMENT_PART:
+ return JbiConstants.WSDL11_WRAPPER_NAMESPACE;
+ case STATE_RUN_PART:
+ return parts.get(part).get(reader).getNamespaceURI();
+ default:
+ throw new IllegalStateException();
+ }
}
public String getPrefix() {
- return getName().getPrefix();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ case STATE_END_ELEMENT_WRAPPER:
+ case STATE_START_ELEMENT_PART:
+ case STATE_END_ELEMENT_PART:
+ return JbiConstants.WSDL11_WRAPPER_PREFIX;
+ case STATE_RUN_PART:
+ return parts.get(part).get(reader).getPrefix();
+ default:
+ throw new IllegalStateException();
+ }
}
public boolean hasName() {
@@ -420,15 +451,54 @@
}
public String getAttributeNamespace(int i) {
- return getAttributeName(i).getNamespaceURI();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ switch (i) {
+ case 0: return XMLConstants.XMLNS_ATTRIBUTE_NS_URI;
+ case 1:
+ case 2:
+ case 3: return XMLConstants.NULL_NS_URI;
+ default: throw new IllegalStateException();
+ }
+ case STATE_RUN_PART:
+ return
parts.get(part).get(reader).getAttributeNamespace(i);
+ default:
+ throw new IllegalStateException();
+ }
}
public String getAttributeLocalName(int i) {
- return getAttributeName(i).getLocalPart();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ switch (i) {
+ case 0: return
JbiConstants.WSDL11_WRAPPER_MESSAGE_PREFIX;
+ case 1: return JbiConstants.WSDL11_WRAPPER_TYPE;
+ case 2: return JbiConstants.WSDL11_WRAPPER_NAME;
+ case 3: return JbiConstants.WSDL11_WRAPPER_VERSION;
+ default: throw new IllegalStateException();
+ }
+ case STATE_RUN_PART:
+ return
parts.get(part).get(reader).getAttributeLocalName(i);
+ default:
+ throw new IllegalStateException();
+ }
}
public String getAttributePrefix(int i) {
- return getAttributeName(i).getPrefix();
+ switch (state) {
+ case STATE_START_ELEMENT_WRAPPER:
+ switch (i) {
+ case 0: return XMLConstants.XMLNS_ATTRIBUTE;
+ case 1:
+ case 2:
+ case 3: return XMLConstants.DEFAULT_NS_PREFIX;
+ default: throw new IllegalStateException();
+ }
+ case STATE_RUN_PART:
+ return parts.get(part).get(reader).getAttributePrefix(i);
+ default:
+ throw new IllegalStateException();
+ }
}
public String getAttributeType(int i) {
@@ -458,9 +528,7 @@
return JbiConstants.WSDL11_WRAPPER_MESSAGE_PREFIX
+ ":" + typeLocalName;
}
case 2:
- {
return wsdlMessage.getMessageName();
- }
case 3:
return "1.0";
default: throw new IllegalStateException();
Modified:
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/util/stax/StaxSource.java
URL:
http://svn.apache.org/viewvc/servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/util/stax/StaxSource.java?rev=677921&r1=677920&r2=677921&view=diff
==============================================================================
---
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/util/stax/StaxSource.java
(original)
+++
servicemix/components/shared-libraries/trunk/servicemix-soap2/src/main/java/org/apache/servicemix/soap/util/stax/StaxSource.java
Fri Jul 18 07:53:37 2008
@@ -112,7 +112,7 @@
String localName = streamReader.getLocalName();
String prefix = streamReader.getPrefix();
String qname = prefix != null && prefix.length() > 0 ?
prefix + ":" + localName : localName;
- contentHandler.startElement(uri, localName, qname,
getAttributes());
+ contentHandler.startElement(uri != null ? uri :
XMLConstants.NULL_NS_URI, localName, qname, getAttributes());
break;
}
}