001: /*
002: * GeoTools - OpenSource mapping toolkit
003: * http://geotools.org
004: * (C) 2002-2006, GeoTools Project Managment Committee (PMC)
005: *
006: * This library is free software; you can redistribute it and/or
007: * modify it under the terms of the GNU Lesser General Public
008: * License as published by the Free Software Foundation;
009: * version 2.1 of the License.
010: *
011: * This library is distributed in the hope that it will be useful,
012: * but WITHOUT ANY WARRANTY; without even the implied warranty of
013: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
014: * Lesser General Public License for more details.
015: */
016: package org.geotools.xs.bindings;
017:
018: import java.util.Map;
019:
020: import javax.xml.namespace.QName;
021:
022: import org.geotools.xml.AbstractComplexBinding;
023: import org.geotools.xml.ElementInstance;
024: import org.geotools.xml.Node;
025: import org.picocontainer.MutablePicoContainer;
026:
027: /**
028: * Binding object for the type http://www.w3.org/2001/XMLSchema:complexType.
029: *
030: * <p>
031: * <pre>
032: * <code>
033: * <xs:complexType name="complexType" abstract="true">
034: * <xs:complexContent>
035: * <xs:extension base="xs:annotated">
036: * <xs:group ref="xs:complexTypeModel"/>
037: * <xs:attribute name="name" type="xs:NCName">
038: * <xs:annotation>
039: * <xs:documentation> Will be restricted to
040: * required or forbidden</xs:documentation>
041: * </xs:annotation>
042: * </xs:attribute>
043: * <xs:attribute name="mixed" type="xs:boolean" use="optional" default="false">
044: * <xs:annotation>
045: * <xs:documentation> Not allowed if
046: * simpleContent child is chosen. May be
047: * overriden by setting on complexContent child.</xs:documentation>
048: * </xs:annotation>
049: * </xs:attribute>
050: * <xs:attribute name="abstract" type="xs:boolean"
051: * use="optional" default="false"/>
052: * <xs:attribute name="final" type="xs:derivationSet"/>
053: * <xs:attribute name="block" type="xs:derivationSet"/>
054: * </xs:extension>
055: * </xs:complexContent>
056: * </xs:complexType>
057: *
058: * </code>
059: * </pre>
060: * </p>
061: *
062: * @generated
063: */
064: public class XSComplexTypeBinding extends AbstractComplexBinding {
065: /**
066: * @generated
067: */
068: public QName getTarget() {
069: return XS.COMPLEXTYPE;
070: }
071:
072: /**
073: * <!-- begin-user-doc -->
074: * <!-- end-user-doc -->
075: *
076: * @generated modifiable
077: */
078: public int getExecutionMode() {
079: return AFTER;
080: }
081:
082: /**
083: * <!-- begin-user-doc -->
084: * This binding delegates to its parent binding, which returns objects of
085: * type {@link Map}.
086: * <!-- end-user-doc -->
087: *
088: * @generated modifiable
089: */
090: public Class getType() {
091: return null;
092: }
093:
094: /**
095: * <!-- begin-user-doc -->
096: * <!-- end-user-doc -->
097: *
098: * @generated modifiable
099: */
100: public void initialize(ElementInstance instance, Node node,
101: MutablePicoContainer context) {
102: }
103:
104: /**
105: * <!-- begin-user-doc -->
106: * This binding delegates to its parent binding, which returns objects of
107: * type {@link Map}.
108: * <!-- end-user-doc -->
109: *
110: * @generated modifiable
111: */
112: public Object parse(ElementInstance instance, Node node,
113: Object value) throws Exception {
114: return value; //all work done by super type
115: }
116:
117: }
|