1/* 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. 4 * 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 7 * published by the Free Software Foundation. Oracle designates this 8 * particular file as subject to the "Classpath" exception as provided 9 * by Oracle in the LICENSE file that accompanied this code. 10 * 11 * This code is distributed in the hope that it will be useful, but WITHOUT 12 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 13 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14 * version 2 for more details (a copy is included in the LICENSE file that 15 * accompanied this code). 16 * 17 * You should have received a copy of the GNU General Public License version 18 * 2 along with this work; if not, write to the Free Software Foundation, 19 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 20 * 21 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 22 * or visit www.oracle.com if you need additional information or have any 23 * questions. 24 */ 25 26package com.sun.tools.internal.xjc.reader.xmlschema; 27 28import com.sun.tools.internal.xjc.model.CElement; 29import com.sun.xml.internal.xsom.XSAnnotation; 30import com.sun.xml.internal.xsom.XSAttGroupDecl; 31import com.sun.xml.internal.xsom.XSAttributeDecl; 32import com.sun.xml.internal.xsom.XSAttributeUse; 33import com.sun.xml.internal.xsom.XSComplexType; 34import com.sun.xml.internal.xsom.XSContentType; 35import com.sun.xml.internal.xsom.XSElementDecl; 36import com.sun.xml.internal.xsom.XSFacet; 37import com.sun.xml.internal.xsom.XSIdentityConstraint; 38import com.sun.xml.internal.xsom.XSModelGroup; 39import com.sun.xml.internal.xsom.XSModelGroupDecl; 40import com.sun.xml.internal.xsom.XSNotation; 41import com.sun.xml.internal.xsom.XSParticle; 42import com.sun.xml.internal.xsom.XSSchema; 43import com.sun.xml.internal.xsom.XSSimpleType; 44import com.sun.xml.internal.xsom.XSWildcard; 45import com.sun.xml.internal.xsom.XSXPath; 46 47/** 48 * {@link ClassBinder} that delegates the call to another {@link ClassBinder}. 49 * 50 * @author Kohsuke Kawaguchi (kk@kohsuke.org) 51 */ 52abstract class ClassBinderFilter implements ClassBinder { 53 private final ClassBinder core; 54 55 protected ClassBinderFilter(ClassBinder core) { 56 this.core = core; 57 } 58 59 public CElement annotation(XSAnnotation xsAnnotation) { 60 return core.annotation(xsAnnotation); 61 } 62 63 public CElement attGroupDecl(XSAttGroupDecl xsAttGroupDecl) { 64 return core.attGroupDecl(xsAttGroupDecl); 65 } 66 67 public CElement attributeDecl(XSAttributeDecl xsAttributeDecl) { 68 return core.attributeDecl(xsAttributeDecl); 69 } 70 71 public CElement attributeUse(XSAttributeUse xsAttributeUse) { 72 return core.attributeUse(xsAttributeUse); 73 } 74 75 public CElement complexType(XSComplexType xsComplexType) { 76 return core.complexType(xsComplexType); 77 } 78 79 public CElement schema(XSSchema xsSchema) { 80 return core.schema(xsSchema); 81 } 82 83 public CElement facet(XSFacet xsFacet) { 84 return core.facet(xsFacet); 85 } 86 87 public CElement notation(XSNotation xsNotation) { 88 return core.notation(xsNotation); 89 } 90 91 public CElement simpleType(XSSimpleType xsSimpleType) { 92 return core.simpleType(xsSimpleType); 93 } 94 95 public CElement particle(XSParticle xsParticle) { 96 return core.particle(xsParticle); 97 } 98 99 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(XSIdentityConstraint xsIdentityConstraint) { 120 return core.identityConstraint(xsIdentityConstraint); 121 } 122 123 public CElement xpath(XSXPath xsxPath) { 124 return core.xpath(xsxPath); 125 } 126} 127