src/share/jaxws_classes/com/sun/xml/internal/ws/api/addressing/OutboundReferenceParameterHeader.java

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.  Oracle designates this

@@ -78,26 +78,31 @@
         this.infoset = infoset;
         this.nsUri = nsUri;
         this.localName = localName;
     }
 
+    @Override
     public @NotNull String getNamespaceURI() {
         return nsUri;
     }
 
+    @Override
     public @NotNull String getLocalPart() {
         return localName;
     }
 
+    @Override
     public String getAttribute(String nsUri, String localName) {
-        if(attributes==null)
+        if(attributes==null) {
             parseAttributes();
+        }
         for(int i=attributes.size()-1; i>=0; i-- ) {
             Attribute a = attributes.get(i);
-            if(a.localName.equals(localName) && a.nsUri.equals(nsUri))
+            if (a.localName.equals(localName) && a.nsUri.equals(nsUri)) {
                 return a.value;
         }
+        }
         return null;
     }
 
     /**
      * We don't really expect this to be used, but just to satisfy

@@ -111,109 +116,139 @@
             reader.nextTag();   // move to the first element, which is the header element
 
             attributes = new FinalArrayList<Attribute>();
             boolean refParamAttrWritten = false;
             for (int i = 0; i < reader.getAttributeCount(); i++) {
-                final String localName = reader.getAttributeLocalName(i);
+                final String attrLocalName = reader.getAttributeLocalName(i);
                 final String namespaceURI = reader.getAttributeNamespace(i);
                 final String value = reader.getAttributeValue(i);
-                if(namespaceURI.equals(AddressingVersion.W3C.nsUri)&& localName.equals("IS_REFERENCE_PARAMETER"))
+                if (namespaceURI.equals(AddressingVersion.W3C.nsUri)&& attrLocalName.equals("IS_REFERENCE_PARAMETER")) {
                     refParamAttrWritten = true;
-                attributes.add(new Attribute(namespaceURI,localName,value));
+                }
+                attributes.add(new Attribute(namespaceURI,attrLocalName,value));
             }
             // we are adding one more attribute "wsa:IsReferenceParameter", if its not alrady there
-            if(!refParamAttrWritten)
+            if (!refParamAttrWritten) {
                 attributes.add(new Attribute(AddressingVersion.W3C.nsUri,IS_REFERENCE_PARAMETER,TRUE_VALUE));
+            }
         } catch (XMLStreamException e) {
             throw new WebServiceException("Unable to read the attributes for {"+nsUri+"}"+localName+" header",e);
         }
     }
 
+    @Override
     public XMLStreamReader readHeader() throws XMLStreamException {
         return new StreamReaderDelegate(infoset.readAsXMLStreamReader()) {
             int state=0; /* 0:expecting root, 1:in root, 2:past root */
+            @Override
             public int next() throws XMLStreamException {
                 return check(super.next());
             }
 
+            @Override
             public int nextTag() throws XMLStreamException {
                 return check(super.nextTag());
             }
 
             private int check(int type) {
-                switch(state) {
+                switch (state) {
                 case 0:
-                    if(type==START_ELEMENT)
-                        state=1;
+                        if (type == START_ELEMENT) {
+                            state = 1;
+                        }
                     break;
                 case 1:
-                    state=2;
+                        state = 2;
+                        break;
+                    default:
+                        break;
                 }
 
                 return type;
             }
 
+            @Override
             public int getAttributeCount() {
-                if(state==1)    return super.getAttributeCount()+1;
-                else            return super.getAttributeCount();
+                if (state == 1) {
+                    return super.getAttributeCount()+1;
+                } else {
+                    return super.getAttributeCount();
+                }
             }
 
+            @Override
             public String getAttributeLocalName(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if (state == 1 && index == super.getAttributeCount()) {
                     return IS_REFERENCE_PARAMETER;
-                else
+                } else {
                     return super.getAttributeLocalName(index);
             }
+            }
 
+            @Override
             public String getAttributeNamespace(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if (state == 1 && index==super.getAttributeCount()) {
                     return AddressingVersion.W3C.nsUri;
-                else
+                }
+                else {
                     return super.getAttributeNamespace(index);
             }
+            }
 
+            @Override
             public String getAttributePrefix(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if(state==1 && index==super.getAttributeCount()) {
                     return "wsa";
-                else
+                } else {
                     return super.getAttributePrefix(index);
             }
+            }
 
+            @Override
             public String getAttributeType(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if(state==1 && index==super.getAttributeCount()) {
                     return "CDATA";
-                else
+                } else {
                     return super.getAttributeType(index);
             }
+            }
 
+            @Override
             public String getAttributeValue(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if(state==1 && index==super.getAttributeCount()) {
                     return TRUE_VALUE;
-                else
+                } else {
                     return super.getAttributeValue(index);
             }
+            }
 
+            @Override
             public QName getAttributeName(int index) {
-                if(state==1 && index==super.getAttributeCount())
+                if(state==1 && index==super.getAttributeCount()) {
                     return new QName(AddressingVersion.W3C.nsUri, IS_REFERENCE_PARAMETER, "wsa");
-                else
+                } else {
                     return super.getAttributeName(index);
             }
+            }
 
+            @Override
             public String getAttributeValue(String namespaceUri, String localName) {
-                if(state==1 && localName.equals(IS_REFERENCE_PARAMETER) && namespaceUri.equals(AddressingVersion.W3C.nsUri))
+                if(state==1 && localName.equals(IS_REFERENCE_PARAMETER) && namespaceUri.equals(AddressingVersion.W3C.nsUri)) {
                     return TRUE_VALUE;
-                else
+                } else {
                     return super.getAttributeValue(namespaceUri, localName);
             }
+            }
         };
     }
 
+    @Override
     public void writeTo(XMLStreamWriter w) throws XMLStreamException {
         infoset.writeToXMLStreamWriter(new XMLStreamWriterFilter(w) {
             private boolean root=true;
             private boolean onRootEl = true;
+            @Override
             public void writeStartElement(String localName) throws XMLStreamException {
                 super.writeStartElement(localName);
                 writeAddedAttribute();
             }
 

@@ -225,71 +260,77 @@
                 root=false;
                 writeNamespace("wsa",AddressingVersion.W3C.nsUri);
                 super.writeAttribute("wsa",AddressingVersion.W3C.nsUri,IS_REFERENCE_PARAMETER,TRUE_VALUE);
             }
 
+            @Override
             public void writeStartElement(String namespaceURI, String localName) throws XMLStreamException {
                 super.writeStartElement(namespaceURI, localName);
                 writeAddedAttribute();
             }
 
+            @Override
             public void writeStartElement(String prefix, String localName, String namespaceURI) throws XMLStreamException {
                 //TODO: Verify with KK later
                 //check if prefix is declared before writing start element.
                 boolean prefixDeclared = isPrefixDeclared(prefix,namespaceURI);
                 super.writeStartElement(prefix, localName, namespaceURI);
-                if(!prefixDeclared && !prefix.equals(""))
+                if (!prefixDeclared && !prefix.equals("")) {
                     super.writeNamespace(prefix,namespaceURI);
+                }
                 writeAddedAttribute();
             }
+            @Override
             public void writeNamespace(String prefix, String namespaceURI) throws XMLStreamException{
-                //TODO: Verify with KK later
-                if(isPrefixDeclared(prefix, namespaceURI)) {
-                    //Dont write it again , as its already in NamespaceContext
-                    return;
-                } else
+                if (!isPrefixDeclared(prefix, namespaceURI)) {
                     super.writeNamespace(prefix,namespaceURI);
             }
+            }
 
+            @Override
             public void writeAttribute(String prefix, String namespaceURI, String localName, String value) throws XMLStreamException {
                 //skip if its on root element and attribute is wsa;IsReferenceParameter, as we write it.
                 if(onRootEl && namespaceURI.equals(AddressingVersion.W3C.nsUri)
-                            && localName.equals(IS_REFERENCE_PARAMETER))
+                            && localName.equals(IS_REFERENCE_PARAMETER)) {
                     return;
-
+                }
                 writer.writeAttribute(prefix, namespaceURI, localName, value);
             }
-            public void writeAttribute(String namespaceURI, String localName, String value) throws XMLStreamException {
-
 
+            @Override
+            public void writeAttribute(String namespaceURI, String localName, String value) throws XMLStreamException {
                 writer.writeAttribute(namespaceURI, localName, value);
             }
             private boolean isPrefixDeclared(String prefix, String namespaceURI ) {
                 return namespaceURI.equals(getNamespaceContext().getNamespaceURI(prefix));
             }
         },true);
     }
 
+    @Override
     public void writeTo(SOAPMessage saaj) throws SOAPException {
         //TODO: SAAJ returns null instead of throwing SOAPException,
         // when there is no SOAPHeader in the message,
         // which leads to NPE.
         try {
             SOAPHeader header = saaj.getSOAPHeader();
-            if (header == null)
+            if (header == null) {
                 header = saaj.getSOAPPart().getEnvelope().addHeader();
+            }
             Element node = (Element)infoset.writeTo(header);
             node.setAttributeNS(AddressingVersion.W3C.nsUri,AddressingVersion.W3C.getPrefix()+":"+IS_REFERENCE_PARAMETER,TRUE_VALUE);
         } catch (XMLStreamBufferException e) {
             throw new SOAPException(e);
         }
     }
 
+    @Override
     public void writeTo(ContentHandler contentHandler, ErrorHandler errorHandler) throws SAXException {
         class Filter extends XMLFilterImpl {
             Filter(ContentHandler ch) { setContentHandler(ch); }
             private int depth=0;
+            @Override
             public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
                 if(depth++==0) {
                     // add one more attribute
                     super.startPrefixMapping("wsa",AddressingVersion.W3C.nsUri);
 

@@ -307,16 +348,18 @@
                 }
 
                 super.startElement(uri, localName, qName, atts);
             }
 
+            @Override
             public void endElement(String uri, String localName, String qName) throws SAXException {
                 super.endElement(uri, localName, qName);
-                if(--depth==0)
+                if (--depth == 0) {
                     super.endPrefixMapping("wsa");
             }
         }
+        }
 
         infoset.writeTo(new Filter(contentHandler),errorHandler);
     }
 
 

@@ -339,12 +382,11 @@
 
         /**
          * Convert null to "".
          */
         private static String fixNull(String s) {
-            if(s==null) return "";
-            else        return s;
+            return s == null ? "" : s;
         }
     }
 
     /**
      * We the performance paranoid people in the JAX-WS RI thinks