Author: sagara Date: Fri Jun 22 11:02:40 2012 New Revision: 1352843 URL: http://svn.apache.org/viewvc?rev=1352843&view=rev Log: * Axis2 should not use Woden internal classes. * Further clean up on policy usage.
Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDL20ToAxisServiceBuilder.java axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDLToAxisServiceBuilder.java axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/ListingAgent.java Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDL20ToAxisServiceBuilder.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDL20ToAxisServiceBuilder.java?rev=1352843&r1=1352842&r2=1352843&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDL20ToAxisServiceBuilder.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDL20ToAxisServiceBuilder.java Fri Jun 22 11:02:40 2012 @@ -25,20 +25,18 @@ import org.apache.axiom.soap.SOAP12Const import org.apache.axis2.AxisFault; import org.apache.axis2.namespace.Constants; import org.apache.axis2.transport.http.HTTPConstants; -import org.apache.axis2.wsdl.*; +import org.apache.axis2.wsdl.HTTPHeaderMessage; +import org.apache.axis2.wsdl.SOAPHeaderMessage; +import org.apache.axis2.wsdl.SOAPModuleMessage; +import org.apache.axis2.wsdl.WSDLConstants; +import org.apache.axis2.wsdl.WSDLUtil; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.woden.WSDLException; +import org.apache.woden.WSDLFactory; import org.apache.woden.WSDLReader; import org.apache.woden.WSDLSource; import org.apache.woden.XMLElement; -import org.apache.woden.internal.DOMWSDLFactory; -import org.apache.woden.internal.wsdl20.BindingFaultImpl; -import org.apache.woden.internal.wsdl20.BindingOperationImpl; -import org.apache.woden.internal.wsdl20.extensions.InterfaceOperationExtensionsImpl; -import org.apache.woden.internal.wsdl20.extensions.http.HTTPBindingExtensionsImpl; -import org.apache.woden.internal.wsdl20.extensions.http.HTTPHeaderImpl; -import org.apache.woden.internal.wsdl20.extensions.soap.SOAPBindingExtensionsImpl; import org.apache.woden.resolver.URIResolver; import org.apache.woden.schema.Schema; import org.apache.woden.types.NamespaceDeclaration; @@ -58,11 +56,14 @@ import org.apache.woden.wsdl20.Interface import org.apache.woden.wsdl20.InterfaceOperation; import org.apache.woden.wsdl20.Service; import org.apache.woden.wsdl20.enumeration.MessageLabel; +import org.apache.woden.wsdl20.extensions.InterfaceOperationExtensions; +import org.apache.woden.wsdl20.extensions.http.HTTPBindingExtensions; import org.apache.woden.wsdl20.extensions.http.HTTPBindingFaultExtensions; import org.apache.woden.wsdl20.extensions.http.HTTPBindingMessageReferenceExtensions; import org.apache.woden.wsdl20.extensions.http.HTTPBindingOperationExtensions; import org.apache.woden.wsdl20.extensions.http.HTTPEndpointExtensions; import org.apache.woden.wsdl20.extensions.http.HTTPHeader; +import org.apache.woden.wsdl20.extensions.http.HTTPHeaderElement; import org.apache.woden.wsdl20.extensions.http.HTTPLocation; import org.apache.woden.wsdl20.extensions.rpc.Argument; import org.apache.woden.wsdl20.extensions.rpc.RPCInterfaceOperationExtensions; @@ -74,6 +75,8 @@ import org.apache.woden.wsdl20.extension import org.apache.woden.wsdl20.extensions.soap.SOAPEndpointExtensions; import org.apache.woden.wsdl20.extensions.soap.SOAPHeaderBlock; import org.apache.woden.wsdl20.extensions.soap.SOAPModule; +import org.apache.woden.wsdl20.xml.BindingFaultElement; +import org.apache.woden.wsdl20.xml.BindingOperationElement; import org.apache.woden.wsdl20.xml.DescriptionElement; import org.apache.woden.wsdl20.xml.DocumentableElement; import org.apache.woden.wsdl20.xml.DocumentationElement; @@ -118,7 +121,7 @@ public class WSDL20ToAxisServiceBuilder private NamespaceDeclaration[] namespacemap; - private List operationNames = new ArrayList(); + private List<QName> operationNames = new ArrayList<QName>(); private NamespaceMap stringBasedNamespaceMap; @@ -351,7 +354,7 @@ public class WSDL20ToAxisServiceBuilder if (WSDL2Constants.URI_WSDL2_SOAP.equals(binding.getType().toString())) { SOAPBindingExtensions soapBindingExtensions; try { - soapBindingExtensions = (SOAPBindingExtensionsImpl) binding + soapBindingExtensions = (SOAPBindingExtensions) binding .getComponentExtensionContext( new URI(WSDL2Constants.URI_WSDL2_SOAP)); } catch (URISyntaxException e) { @@ -599,7 +602,7 @@ public class WSDL20ToAxisServiceBuilder }); SOAPBindingExtensions soapBindingExtensions; try { - soapBindingExtensions = (SOAPBindingExtensionsImpl) binding + soapBindingExtensions = (SOAPBindingExtensions) binding .getComponentExtensionContext(new URI(WSDL2Constants.URI_WSDL2_SOAP)); } catch (URISyntaxException e) { throw new AxisFault("Soap Binding Extention not found"); @@ -642,8 +645,8 @@ public class WSDL20ToAxisServiceBuilder BindingFault[] bindingFaults = binding.getBindingFaults(); for (int i = 0; i < bindingFaults.length; i++) { - BindingFaultImpl bindingFault = (BindingFaultImpl) bindingFaults[i]; - InterfaceFault interfaceFault = serviceInterface.getFromAllInterfaceFaults(bindingFault.getRef()); + BindingFault bindingFault = bindingFaults[i]; + InterfaceFault interfaceFault = serviceInterface.getFromAllInterfaceFaults(((BindingFaultElement)bindingFault).getRef()); AxisBindingMessage axisBindingFault = new AxisBindingMessage(); axisBindingFault.setFault(true); axisBindingFault.setName(interfaceFault.getName().getLocalPart()); @@ -683,10 +686,10 @@ public class WSDL20ToAxisServiceBuilder BindingOperation[] bindingOperations = binding.getBindingOperations(); for (int i = 0; i < bindingOperations.length; i++) { - BindingOperationImpl bindingOperation = (BindingOperationImpl) bindingOperations[i]; + BindingOperation bindingOperation = bindingOperations[i]; AxisBindingOperation axisBindingOperation = new AxisBindingOperation(); - InterfaceOperation interfaceOperation = serviceInterface.getFromAllInterfaceOperations(bindingOperation.getRef()); + InterfaceOperation interfaceOperation = serviceInterface.getFromAllInterfaceOperations(((BindingOperationElement)bindingOperation).getRef()); AxisOperation axisOperation = axisService.getOperation(interfaceOperation.getName()); @@ -819,12 +822,12 @@ public class WSDL20ToAxisServiceBuilder private void processHTTPBindingExtention(Binding binding, AxisBinding axisBinding, Interface serviceInterface) throws AxisFault { - Map httpLocationTable = createHttpLocationTable(); + Map<String, AxisOperation> httpLocationTable = createHttpLocationTable(); // Capture all the binding specific properties - HTTPBindingExtensionsImpl httpBindingExtensions; + HTTPBindingExtensions httpBindingExtensions; try { - httpBindingExtensions = (HTTPBindingExtensionsImpl) binding + httpBindingExtensions = (HTTPBindingExtensions) binding .getComponentExtensionContext(new URI(WSDL2Constants.URI_WSDL2_HTTP)); } catch (URISyntaxException e) { throw new AxisFault("HTTP Binding Extention not found"); @@ -842,9 +845,9 @@ public class WSDL20ToAxisServiceBuilder BindingFault[] bindingFaults = binding.getBindingFaults(); for (int i = 0; i < bindingFaults.length; i++) { - BindingFaultImpl bindingFault = (BindingFaultImpl) bindingFaults[i]; + BindingFault bindingFault = bindingFaults[i]; InterfaceFault interfaceFault = - serviceInterface.getFromAllInterfaceFaults(bindingFault.getRef()); + serviceInterface.getFromAllInterfaceFaults(((BindingFaultElement)bindingFault).getRef()); AxisBindingMessage axisBindingFault = new AxisBindingMessage(); axisBindingFault.setFault(true); axisBindingFault.setName(interfaceFault.getName().getLocalPart()); @@ -876,10 +879,10 @@ public class WSDL20ToAxisServiceBuilder BindingOperation[] bindingOperations = binding.getBindingOperations(); for (int i = 0; i < bindingOperations.length; i++) { - BindingOperationImpl bindingOperation = (BindingOperationImpl) bindingOperations[i]; + BindingOperation bindingOperation = bindingOperations[i]; AxisBindingOperation axisBindingOperation = new AxisBindingOperation(); - InterfaceOperation interfaceOperation = serviceInterface.getFromAllInterfaceOperations(bindingOperation.getRef()); + InterfaceOperation interfaceOperation = serviceInterface.getFromAllInterfaceOperations(((BindingOperationElement)bindingOperation).getRef()); AxisOperation axisOperation = axisService.getOperation(interfaceOperation.getName()); @@ -1063,9 +1066,9 @@ public class WSDL20ToAxisServiceBuilder // assuming the style of the operations of WSDL 2.0 is always document, for the time being :) // The following can be used to capture the wsdlx:safe attribute - InterfaceOperationExtensionsImpl interfaceOperationExtensions; + InterfaceOperationExtensions interfaceOperationExtensions; try { - interfaceOperationExtensions = (InterfaceOperationExtensionsImpl) operation + interfaceOperationExtensions = (InterfaceOperationExtensions) operation .getComponentExtensionContext( new URI(WSDL2Constants.URI_WSDL2_EXTENSIONS)); } catch (URISyntaxException e) { @@ -1196,9 +1199,9 @@ public class WSDL20ToAxisServiceBuilder if(xa!=null){ String value = (String)xa.getContent(); if(value != null){ - ArrayList al = axisOperation.getWSAMappingList(); + ArrayList<String> al = axisOperation.getWSAMappingList(); if(al == null){ - al = new ArrayList(); + al = new ArrayList<String>(); axisOperation.setWsamappingList(al); } al.add(value); @@ -1261,7 +1264,8 @@ public class WSDL20ToAxisServiceBuilder } private Description readInTheWSDLFile(Document document) throws WSDLException { - WSDLReader reader = DOMWSDLFactory.newInstance().newWSDLReader(); + WSDLFactory factory = WSDLFactory.newInstance(); + WSDLReader reader = factory.newWSDLReader(); if (customWSDLResolver != null) { reader.setURIResolver(customWSDLResolver); } @@ -1293,14 +1297,14 @@ public class WSDL20ToAxisServiceBuilder * Convert woden dependent SOAPHeaderBlock objects to SOAPHeaderMessage objects * * @param soapHeaderBlocks - An array of SOAPHeaderBlock objects - * @return ArrayList - An ArrayList of SOAPHeaderMessage objects + * @return List<SOAPHeaderMessage - An List of SOAPHeaderMessage objects */ - private ArrayList createSoapHeaders(SOAPHeaderBlock soapHeaderBlocks[]) { + private List<SOAPHeaderMessage> createSoapHeaders(SOAPHeaderBlock soapHeaderBlocks[]) { if (soapHeaderBlocks.length == 0) { return null; } - ArrayList soapHeaderMessages = new ArrayList(); + List<SOAPHeaderMessage> soapHeaderMessages = new ArrayList<SOAPHeaderMessage>(); for (int i = 0; i < soapHeaderBlocks.length; i++) { SOAPHeaderBlock soapHeaderBlock = soapHeaderBlocks[i]; @@ -1323,14 +1327,14 @@ public class WSDL20ToAxisServiceBuilder * Convert woden dependent SOAPHeaderBlock objects to SOAPHeaderMessage objects * * @param soapModules - An array of SOAPModule objects - * @return ArrayList - An ArrayList of SOAPHeaderMessage objects + * @return List<SOAPModuleMessage> - An List of SOAPHeaderMessage objects */ - private ArrayList createSoapModules(SOAPModule soapModules[]) { + private List<SOAPModuleMessage> createSoapModules(SOAPModule soapModules[]) { if (soapModules.length == 0) { return null; } - ArrayList soapModuleMessages = new ArrayList(); + List<SOAPModuleMessage> soapModuleMessages = new ArrayList<SOAPModuleMessage>(); for (int i = 0; i < soapModules.length; i++) { SOAPModule soapModule = soapModules[i]; @@ -1345,19 +1349,19 @@ public class WSDL20ToAxisServiceBuilder * Convert woden dependent HTTPHeader objects to Header objects * * @param httpHeaders - An array of HTTPHeader objects - * @return ArrayList - An ArrayList of Header objects + * @return List<HTTPHeaderMessage> - An List of Header objects */ - private ArrayList createHttpHeaders(HTTPHeader httpHeaders[]) { + private List<HTTPHeaderMessage> createHttpHeaders(HTTPHeader httpHeaders[]) { if (httpHeaders.length == 0) { return null; } - ArrayList httpHeaderMessages = new ArrayList(); + List<HTTPHeaderMessage> httpHeaderMessages = new ArrayList<HTTPHeaderMessage>(); for (int i = 0; i < httpHeaders.length; i++) { - HTTPHeaderImpl httpHeader = (HTTPHeaderImpl) httpHeaders[i]; + HTTPHeader httpHeader = (HTTPHeader) httpHeaders[i]; HTTPHeaderMessage httpHeaderMessage = new HTTPHeaderMessage(); - httpHeaderMessage.setqName(httpHeader.getTypeName()); + httpHeaderMessage.setqName(((HTTPHeaderElement)httpHeader).getTypeName()); httpHeaderMessage.setName(httpHeader.getName()); httpHeaderMessage.setRequired(httpHeader.isRequired().booleanValue()); httpHeaderMessages.add(httpHeaderMessage); Modified: axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDLToAxisServiceBuilder.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDLToAxisServiceBuilder.java?rev=1352843&r1=1352842&r2=1352843&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDLToAxisServiceBuilder.java (original) +++ axis/axis2/java/core/trunk/modules/kernel/src/org/apache/axis2/description/WSDLToAxisServiceBuilder.java Fri Jun 22 11:02:40 2012 @@ -306,9 +306,9 @@ public abstract class WSDLToAxisServiceB this.axisConfig = axisConfig; } - protected Map createHttpLocationTable() { + protected Map<String, AxisOperation> createHttpLocationTable() { // Set a comparator so the httpLocations are stored in decending order - Map httpLocationTable = new TreeMap(new Comparator(){ + Map httpLocationTable = new TreeMap<String, AxisOperation>(new Comparator(){ public int compare(Object o1, Object o2) { return (-1 * ((Comparable)o1).compareTo(o2)); } Modified: axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/ListingAgent.java URL: http://svn.apache.org/viewvc/axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/ListingAgent.java?rev=1352843&r1=1352842&r2=1352843&view=diff ============================================================================== --- axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/ListingAgent.java (original) +++ axis/axis2/java/core/trunk/modules/transport/http/src/org/apache/axis2/transport/http/ListingAgent.java Fri Jun 22 11:02:40 2012 @@ -32,7 +32,9 @@ import org.apache.axis2.util.IOUtils; import org.apache.axis2.util.JavaUtils; import org.apache.axis2.util.OnDemandLogger; import org.apache.neethi.Policy; +import org.apache.neethi.PolicyComponent; import org.apache.neethi.PolicyRegistry; +import org.apache.neethi.PolicyRegistryImpl; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; @@ -44,6 +46,7 @@ import javax.xml.stream.XMLStreamWriter; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.util.Collection; import java.util.Enumeration; import java.util.HashMap; import java.util.Iterator; @@ -392,8 +395,9 @@ public class ListingAgent extends Abstra private Policy findPolicy(String id, AxisDescription des) { - List policyElements = des.getPolicyInclude().getPolicyElements(); - PolicyRegistry registry = des.getPolicyInclude().getPolicyRegistry(); + + Collection<PolicyComponent> policyElements = des.getPolicySubject().getAttachedPolicyComponents(); + PolicyRegistry registry = new PolicyRegistryImpl(); Object policyComponent; @@ -403,7 +407,7 @@ public class ListingAgent extends Abstra return policy; } - for (Iterator iterator = policyElements.iterator(); iterator.hasNext();) { + for (Iterator<PolicyComponent> iterator = policyElements.iterator(); iterator.hasNext();) { policyComponent = iterator.next(); if (policyComponent instanceof Policy) { @@ -417,7 +421,7 @@ public class ListingAgent extends Abstra AxisDescription child; - for (Iterator iterator = des.getChildren(); iterator.hasNext();) { + for (Iterator<? extends AxisDescription> iterator = des.getChildren(); iterator.hasNext();) { child = (AxisDescription) iterator.next(); policy = findPolicy(id, child);