/****************************************************************************** * Copyright (c) 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.gmf.runtime.doclet.proxies; import com.sun.javadoc.ClassDoc; import com.sun.javadoc.ConstructorDoc; import com.sun.javadoc.FieldDoc; import com.sun.javadoc.MethodDoc; import com.sun.javadoc.PackageDoc; import com.sun.javadoc.Type; /** * Proxy to a ClassDoc */ public class ClassDocProxy extends ProgramElementDocProxy implements ClassDoc { private Type type; public ClassDocProxy(ClassDoc innerClassDoc) { super (innerClassDoc); type = new TypeProxy(innerClassDoc); } private ClassDoc getInnerClassDoc() { return (ClassDoc)getInnerObject(); } private Type getType() { return type; } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#definesSerializableFields() */ public boolean definesSerializableFields() { return getInnerClassDoc().definesSerializableFields(); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#isAbstract() */ public boolean isAbstract() { return getInnerClassDoc().isAbstract(); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#isExternalizable() */ public boolean isExternalizable() { return getInnerClassDoc().isExternalizable(); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#isSerializable() */ public boolean isSerializable() { return getInnerClassDoc().isSerializable(); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#superclass() */ public ClassDoc superclass() { return FACTORY.createClassDocProxy(getInnerClassDoc().superclass()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#importedClasses() */ public ClassDoc[] importedClasses() { return FACTORY.createClassDocProxies(getInnerClassDoc().importedClasses()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#innerClasses() */ public ClassDoc[] innerClasses() { return FACTORY.createClassDocProxies(getInnerClassDoc().innerClasses()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#interfaces() */ public ClassDoc[] interfaces() { return FACTORY.createClassDocProxies(getInnerClassDoc().interfaces()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#subclassOf(com.sun.javadoc.ClassDoc) */ public boolean subclassOf(ClassDoc arg0) { return getInnerClassDoc().subclassOf((ClassDoc)ProxyUtil.getInnerObject(arg0)); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#innerClasses(boolean) */ public ClassDoc[] innerClasses(boolean arg0) { return getInnerClassDoc().innerClasses(arg0); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#constructors() */ public ConstructorDoc[] constructors() { return FACTORY.createConstructorDocProxies(getInnerClassDoc().constructors()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#constructors(boolean) */ public ConstructorDoc[] constructors(boolean arg0) { return FACTORY.createConstructorDocProxies(getInnerClassDoc().constructors(arg0)); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#fields() */ public FieldDoc[] fields() { return FACTORY.createFieldDocProxies(getInnerClassDoc().fields()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#serializableFields() */ public FieldDoc[] serializableFields() { return FACTORY.createFieldDocProxies(getInnerClassDoc().serializableFields()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#fields(boolean) */ public FieldDoc[] fields(boolean arg0) { return FACTORY.createFieldDocProxies(getInnerClassDoc().fields(arg0)); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#methods() */ public MethodDoc[] methods() { return FACTORY.createMethodDocProxies(getInnerClassDoc().methods()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#serializationMethods() */ public MethodDoc[] serializationMethods() { return FACTORY.createMethodDocProxies(getInnerClassDoc().serializationMethods()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#methods(boolean) */ public MethodDoc[] methods(boolean arg0) { return FACTORY.createMethodDocProxies(getInnerClassDoc().methods(arg0)); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#importedPackages() */ public PackageDoc[] importedPackages() { return FACTORY.createPackageDocProxies(getInnerClassDoc().importedPackages()); } /* (non-Javadoc) * @see com.sun.javadoc.ClassDoc#findClass(java.lang.String) */ public ClassDoc findClass(String arg0) { return FACTORY.createClassDocProxy(getInnerClassDoc().findClass(arg0)); } /* (non-Javadoc) * @see com.sun.javadoc.Type#asClassDoc() */ public ClassDoc asClassDoc() { return getType().asClassDoc(); } /* (non-Javadoc) * @see com.sun.javadoc.Type#dimension() */ public String dimension() { return getType().dimension(); } /* (non-Javadoc) * @see com.sun.javadoc.Type#qualifiedTypeName() */ public String qualifiedTypeName() { return getType().qualifiedTypeName(); } /* (non-Javadoc) * @see com.sun.javadoc.Type#typeName() */ public String typeName() { return getType().typeName(); } }