Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.ws.explorer/src/org/eclipse/wst/ws/internal/explorer/platform/wsdl/fragment/XSDSOAPEncodingToFragmentMapper.java')
-rw-r--r--bundles/org.eclipse.wst.ws.explorer/src/org/eclipse/wst/ws/internal/explorer/platform/wsdl/fragment/XSDSOAPEncodingToFragmentMapper.java130
1 files changed, 0 insertions, 130 deletions
diff --git a/bundles/org.eclipse.wst.ws.explorer/src/org/eclipse/wst/ws/internal/explorer/platform/wsdl/fragment/XSDSOAPEncodingToFragmentMapper.java b/bundles/org.eclipse.wst.ws.explorer/src/org/eclipse/wst/ws/internal/explorer/platform/wsdl/fragment/XSDSOAPEncodingToFragmentMapper.java
deleted file mode 100644
index e91d19427..000000000
--- a/bundles/org.eclipse.wst.ws.explorer/src/org/eclipse/wst/ws/internal/explorer/platform/wsdl/fragment/XSDSOAPEncodingToFragmentMapper.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2005 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * IBM Corporation - initial API and implementation
- *******************************************************************************/
-package org.eclipse.wst.ws.internal.explorer.platform.wsdl.fragment;
-
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.constants.FragmentConstants;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.fragment.impl.SOAPEncArrayFixFragment;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.fragment.impl.SOAPEncArrayRangeFragment;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.fragment.impl.SOAPEncodingWrapperFragment;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.fragment.util.XSDTypeDefinitionUtil;
-import org.eclipse.wst.ws.internal.explorer.platform.wsdl.xsd.WSDLPartsToXSDTypeMapper;
-import org.eclipse.xsd.XSDAttributeGroupContent;
-import org.eclipse.xsd.XSDComplexTypeContent;
-import org.eclipse.xsd.XSDComplexTypeDefinition;
-import org.eclipse.xsd.XSDComponent;
-import org.eclipse.xsd.XSDModelGroup;
-import org.eclipse.xsd.XSDParticle;
-import org.eclipse.xsd.XSDParticleContent;
-import org.eclipse.xsd.XSDTypeDefinition;
-import org.w3c.dom.Element;
-
-public class XSDSOAPEncodingToFragmentMapper extends XSDToFragmentMapper {
- private XSDLiteralXMLEncodingToFragmentMapper xsdLiteralMapper_;
- private XSDComplexTypeToFragmentMapper xsdComplexMapper_;
-
- public XSDSOAPEncodingToFragmentMapper(XSDToFragmentController controller, WSDLPartsToXSDTypeMapper wsdlToXSDMapper) {
- super(controller, wsdlToXSDMapper);
- xsdLiteralMapper_ = null;
- xsdComplexMapper_ = null;
- }
-
- private XSDLiteralXMLEncodingToFragmentMapper getXSDLiteralMapper() {
- if (xsdLiteralMapper_ == null)
- xsdLiteralMapper_ = new XSDLiteralXMLEncodingToFragmentMapper(getController(), getWSDLPartsToXSDTypeMapper());
- return xsdLiteralMapper_;
- }
-
- private XSDComplexTypeToFragmentMapper getXSDComplexMapper() {
- if (xsdComplexMapper_ == null)
- xsdComplexMapper_ = new XSDComplexTypeToFragmentMapper(getController(), getWSDLPartsToXSDTypeMapper());
- return xsdComplexMapper_;
- }
-
- public IXSDFragment getFragment(XSDToFragmentConfiguration config, String id, String name) {
- if (config.getIsWSDLPart()) {
- ISOAPEncodingWrapperFragment wrapperFragment = new SOAPEncodingWrapperFragment(id, name, null);
- String delegationFragId = wrapperFragment.genID();
- IXSDFragment delegationFragment = getFragmentDelegate(config, delegationFragId, name);
- wrapperFragment.setXSDDelegationFragment(delegationFragment);
- getController().addToCache(delegationFragId, delegationFragment);
- return wrapperFragment;
- }
- else
- return getFragmentDelegate(config, id, name);
- }
-
- public IXSDFragment getFragmentDelegate(XSDToFragmentConfiguration config, String id, String name) {
- config = resolveXSDComponent(config);
- XSDComponent component = config.getXSDComponent();
- if (!isComponentResolvable(component))
- return getXSDDefaultFragment(config, id, name);
- else if (component instanceof XSDComplexTypeDefinition) {
- XSDComplexTypeDefinition complexType = (XSDComplexTypeDefinition)component;
- if (XSDTypeDefinitionUtil.isSoapEncArray(complexType))
- return getSOAPEncArrayFragment(config, id, name, complexType);
- else
- return getXSDComplexMapper().getFragment(config, id, name);
- }
- else
- return getXSDLiteralMapper().getFragment(config, id, name);
- }
-
- private IXSDFragment getSOAPEncArrayFragment(XSDToFragmentConfiguration config, String id, String name, XSDComplexTypeDefinition complexType) {
- EList xsdAttrContents = complexType.getAttributeContents();
- for (int i = 0; i < xsdAttrContents.size(); i++) {
- String soapEncArrayTypeNamespaceURI = null;
- String soapEncArrayTypeLocalName = null;
- int soapEncArrayDimension = 0;
- XSDAttributeGroupContent xsdAttrContent = (XSDAttributeGroupContent)xsdAttrContents.get(i);
- Element element = xsdAttrContent.getElement();
- String arrayTypeAttr = element.getAttributeNS(FragmentConstants.URI_WSDL, FragmentConstants.QNAME_LOCAL_NAME_ARRAY_TYPE);
- if (arrayTypeAttr != null && arrayTypeAttr.length() > 0) {
- int colon = arrayTypeAttr.indexOf(FragmentConstants.COLON);
- String nsPrefix = (colon > 0) ? arrayTypeAttr.substring(0, colon) : null;
- soapEncArrayTypeNamespaceURI = (String)xsdAttrContent.getSchema().getQNamePrefixToNamespaceMap().get(nsPrefix);
- int dimensionIndex = arrayTypeAttr.indexOf(FragmentConstants.LEFT_SQUARE_BRACKET);
- soapEncArrayTypeLocalName = arrayTypeAttr.substring(colon + 1, dimensionIndex);
- String dimensionString = arrayTypeAttr.substring(dimensionIndex, arrayTypeAttr.length());
- for (int j = 0; j < dimensionString.length() - 1; j++) {
- if (dimensionString.charAt(j) == FragmentConstants.LEFT_SQUARE_BRACKET.charAt(0) && dimensionString.charAt(j + 1) == FragmentConstants.RIGHT_SQUARE_BRACKET.charAt(0)) {
- soapEncArrayDimension++;
- j++;
- }
- else {
- soapEncArrayDimension = 0;
- break;
- }
- }
- }
- if (soapEncArrayTypeNamespaceURI != null && soapEncArrayTypeLocalName != null && soapEncArrayDimension == 1) {
- XSDComponent soapEncArrayType = getWSDLPartsToXSDTypeMapper().getXSDTypeFromSchema(soapEncArrayTypeNamespaceURI, soapEncArrayTypeLocalName, false);
- if (soapEncArrayType != null && soapEncArrayType instanceof XSDTypeDefinition) {
- XSDModelGroup sequence = null;
- XSDComplexTypeContent complexTypeContent = XSDTypeDefinitionUtil.getXSDComplexTypeContent(complexType);
- if (complexTypeContent != null && (complexTypeContent instanceof XSDParticle)) {
- XSDParticleContent xsdParticleContent = ((XSDParticle)complexTypeContent).getContent();
- if (xsdParticleContent instanceof XSDModelGroup)
- sequence = (XSDModelGroup)xsdParticleContent;
- }
- ISOAPEncArrayFragment frag;
- if (config.getMinOccurs() == config.getMaxOccurs())
- frag = new SOAPEncArrayFixFragment(id, name, config, getController(), sequence);
- else
- frag = new SOAPEncArrayRangeFragment(id, name, config, getController(), sequence);
- frag.setXSDTypeDefinition((XSDTypeDefinition)soapEncArrayType);
- return frag;
- }
- }
- }
- return getXSDComplexMapper().getFragment(config, id, name);
- }
-}

Back to the top