src/share/jaxws_classes/com/sun/xml/internal/ws/wsdl/writer/WSDLPatcher.java

changeset 368
0989ad8c0860
parent 286
f50545b5e2f1
child 637
9c07ef4934dd
equal deleted inserted replaced
366:8c0b6bccfe47 368:0989ad8c0860
1 /* 1 /*
2 * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. Oracle designates this 7 * published by the Free Software Foundation. Oracle designates this
28 import com.sun.istack.internal.NotNull; 28 import com.sun.istack.internal.NotNull;
29 import com.sun.xml.internal.ws.api.server.PortAddressResolver; 29 import com.sun.xml.internal.ws.api.server.PortAddressResolver;
30 import com.sun.xml.internal.ws.util.xml.XMLStreamReaderToXMLStreamWriter; 30 import com.sun.xml.internal.ws.util.xml.XMLStreamReaderToXMLStreamWriter;
31 import com.sun.xml.internal.ws.wsdl.parser.WSDLConstants; 31 import com.sun.xml.internal.ws.wsdl.parser.WSDLConstants;
32 import com.sun.xml.internal.ws.addressing.W3CAddressingConstants; 32 import com.sun.xml.internal.ws.addressing.W3CAddressingConstants;
33 import com.sun.xml.internal.ws.addressing.v200408.MemberSubmissionAddressingConstants;
33 import com.sun.istack.internal.Nullable; 34 import com.sun.istack.internal.Nullable;
34 35
35 import javax.xml.namespace.QName; 36 import javax.xml.namespace.QName;
36 import javax.xml.stream.XMLStreamException; 37 import javax.xml.stream.XMLStreamException;
37 import java.util.logging.Logger; 38 import java.util.logging.Logger;
156 } else if (name.equals(WSDLConstants.QNAME_PORT)) { 157 } else if (name.equals(WSDLConstants.QNAME_PORT)) {
157 String value = in.getAttributeValue(null,"name"); 158 String value = in.getAttributeValue(null,"name");
158 if (value != null) { 159 if (value != null) {
159 portName = new QName(targetNamespace,value); 160 portName = new QName(targetNamespace,value);
160 } 161 }
161 } else if (name.equals(W3CAddressingConstants.WSA_EPR_QNAME)) { 162 } else if (name.equals(W3CAddressingConstants.WSA_EPR_QNAME)
163 || name.equals(MemberSubmissionAddressingConstants.WSA_EPR_QNAME)) {
162 if (serviceName != null && portName != null) { 164 if (serviceName != null && portName != null) {
163 inEpr = true; 165 inEpr = true;
164 } 166 }
165 } else if (name.equals(W3CAddressingConstants.WSA_ADDRESS_QNAME)) { 167 } else if (name.equals(W3CAddressingConstants.WSA_ADDRESS_QNAME)
168 || name.equals(MemberSubmissionAddressingConstants.WSA_ADDRESS_QNAME)) {
166 if (inEpr) { 169 if (inEpr) {
167 inEprAddress = true; 170 inEprAddress = true;
168 } 171 }
169 } 172 }
170 super.handleStartElement(); 173 super.handleStartElement();
175 QName name = in.getName(); 178 QName name = in.getName();
176 if (name.equals(WSDLConstants.QNAME_SERVICE)) { 179 if (name.equals(WSDLConstants.QNAME_SERVICE)) {
177 serviceName = null; 180 serviceName = null;
178 } else if (name.equals(WSDLConstants.QNAME_PORT)) { 181 } else if (name.equals(WSDLConstants.QNAME_PORT)) {
179 portName = null; 182 portName = null;
180 } else if (name.equals(W3CAddressingConstants.WSA_EPR_QNAME)) { 183 } else if (name.equals(W3CAddressingConstants.WSA_EPR_QNAME)
184 || name.equals(MemberSubmissionAddressingConstants.WSA_EPR_QNAME)) {
181 if (inEpr) { 185 if (inEpr) {
182 inEpr = false; 186 inEpr = false;
183 } 187 }
184 } else if (name.equals(W3CAddressingConstants.WSA_ADDRESS_QNAME)) { 188 } else if (name.equals(W3CAddressingConstants.WSA_ADDRESS_QNAME)
185 if (inEprAddress) { 189 || name.equals(MemberSubmissionAddressingConstants.WSA_ADDRESS_QNAME)) {
190 if (inEprAddress) {
186 String value = getAddressLocation(); 191 String value = getAddressLocation();
187 if (value != null) { 192 if (value != null) {
188 logger.fine("Fixing EPR Address for service:"+serviceName+ " port:"+portName 193 logger.fine("Fixing EPR Address for service:"+serviceName+ " port:"+portName
189 + " address with "+value); 194 + " address with "+value);
190 out.writeCharacters(value); 195 out.writeCharacters(value);

mercurial