001: /*
002: * Copyright 2006 Sun Microsystems, Inc. All Rights Reserved.
003: * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
004: *
005: * This code is free software; you can redistribute it and/or modify it
006: * under the terms of the GNU General Public License version 2 only, as
007: * published by the Free Software Foundation. Sun designates this
008: * particular file as subject to the "Classpath" exception as provided
009: * by Sun in the LICENSE file that accompanied this code.
010: *
011: * This code is distributed in the hope that it will be useful, but WITHOUT
012: * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
013: * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
014: * version 2 for more details (a copy is included in the LICENSE file that
015: * accompanied this code).
016: *
017: * You should have received a copy of the GNU General Public License version
018: * 2 along with this work; if not, write to the Free Software Foundation,
019: * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
020: *
021: * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
022: * CA 95054 USA or visit www.sun.com if you need additional information or
023: * have any questions.
024: */
025:
026: package com.sun.tools.internal.xjc.reader.xmlschema;
027:
028: import com.sun.tools.internal.xjc.model.CElement;
029: import com.sun.xml.internal.xsom.XSAnnotation;
030: import com.sun.xml.internal.xsom.XSAttGroupDecl;
031: import com.sun.xml.internal.xsom.XSAttributeDecl;
032: import com.sun.xml.internal.xsom.XSAttributeUse;
033: import com.sun.xml.internal.xsom.XSComplexType;
034: import com.sun.xml.internal.xsom.XSContentType;
035: import com.sun.xml.internal.xsom.XSElementDecl;
036: import com.sun.xml.internal.xsom.XSFacet;
037: import com.sun.xml.internal.xsom.XSIdentityConstraint;
038: import com.sun.xml.internal.xsom.XSModelGroup;
039: import com.sun.xml.internal.xsom.XSModelGroupDecl;
040: import com.sun.xml.internal.xsom.XSNotation;
041: import com.sun.xml.internal.xsom.XSParticle;
042: import com.sun.xml.internal.xsom.XSSchema;
043: import com.sun.xml.internal.xsom.XSSimpleType;
044: import com.sun.xml.internal.xsom.XSWildcard;
045: import com.sun.xml.internal.xsom.XSXPath;
046:
047: /**
048: * {@link ClassBinder} that delegates the call to another {@link ClassBinder}.
049: *
050: * @author Kohsuke Kawaguchi (kk@kohsuke.org)
051: */
052: abstract class ClassBinderFilter implements ClassBinder {
053: private final ClassBinder core;
054:
055: protected ClassBinderFilter(ClassBinder core) {
056: this .core = core;
057: }
058:
059: public CElement annotation(XSAnnotation xsAnnotation) {
060: return core.annotation(xsAnnotation);
061: }
062:
063: public CElement attGroupDecl(XSAttGroupDecl xsAttGroupDecl) {
064: return core.attGroupDecl(xsAttGroupDecl);
065: }
066:
067: public CElement attributeDecl(XSAttributeDecl xsAttributeDecl) {
068: return core.attributeDecl(xsAttributeDecl);
069: }
070:
071: public CElement attributeUse(XSAttributeUse xsAttributeUse) {
072: return core.attributeUse(xsAttributeUse);
073: }
074:
075: public CElement complexType(XSComplexType xsComplexType) {
076: return core.complexType(xsComplexType);
077: }
078:
079: public CElement schema(XSSchema xsSchema) {
080: return core.schema(xsSchema);
081: }
082:
083: public CElement facet(XSFacet xsFacet) {
084: return core.facet(xsFacet);
085: }
086:
087: public CElement notation(XSNotation xsNotation) {
088: return core.notation(xsNotation);
089: }
090:
091: public CElement simpleType(XSSimpleType xsSimpleType) {
092: return core.simpleType(xsSimpleType);
093: }
094:
095: public CElement particle(XSParticle xsParticle) {
096: return core.particle(xsParticle);
097: }
098:
099: public CElement empty(XSContentType xsContentType) {
100: return core.empty(xsContentType);
101: }
102:
103: public CElement wildcard(XSWildcard xsWildcard) {
104: return core.wildcard(xsWildcard);
105: }
106:
107: public CElement modelGroupDecl(XSModelGroupDecl xsModelGroupDecl) {
108: return core.modelGroupDecl(xsModelGroupDecl);
109: }
110:
111: public CElement modelGroup(XSModelGroup xsModelGroup) {
112: return core.modelGroup(xsModelGroup);
113: }
114:
115: public CElement elementDecl(XSElementDecl xsElementDecl) {
116: return core.elementDecl(xsElementDecl);
117: }
118:
119: public CElement identityConstraint(
120: XSIdentityConstraint xsIdentityConstraint) {
121: return core.identityConstraint(xsIdentityConstraint);
122: }
123:
124: public CElement xpath(XSXPath xsxPath) {
125: return core.xpath(xsxPath);
126: }
127: }
|