UMLGraph/src/org/umlgraph/doclet/WrappedRootDoc.java

193 lines
4.2 KiB
Java

/*
* Create a graphviz graph based on the classes in the specified java
* source files.
*
* (C) Copyright 2002-2005 Diomidis Spinellis
*
* Permission to use, copy, and distribute this software and its
* documentation for any purpose and without fee is hereby granted,
* provided that the above copyright notice appear in all copies and that
* both that copyright notice and this permission notice appear in
* supporting documentation.
*
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
* WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
* MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*
* $Id$
*
*/
package org.umlgraph.doclet;
import com.sun.javadoc.ClassDoc;
import com.sun.javadoc.PackageDoc;
import com.sun.javadoc.RootDoc;
import com.sun.javadoc.SeeTag;
import com.sun.javadoc.SourcePosition;
import com.sun.javadoc.Tag;
/**
* RootDoc wrapper that provides WrappedClassDoc instances instead of plain ClassDoc in order
* to optimize the overall performance of UMLDoc.
* @author wolf
*/
public class WrappedRootDoc implements RootDoc {
RootDoc wrapped;
WrappedClassDoc[] wrappedClassDocs;
public WrappedRootDoc(RootDoc wrapped) {
this.wrapped = wrapped;
ClassDoc[] classes = wrapped.classes();
wrappedClassDocs = new WrappedClassDoc[classes.length];
for (int i = 0; i < classes.length; i++) {
wrappedClassDocs[i] = new WrappedClassDoc(classes[i]);
}
}
public ClassDoc[] classes() {
return wrappedClassDocs;
}
public ClassDoc classNamed(String arg0) {
return wrapped.classNamed(arg0);
}
public String commentText() {
return wrapped.commentText();
}
public int compareTo(Object arg0) {
return wrapped.compareTo(arg0);
}
public Tag[] firstSentenceTags() {
return wrapped.firstSentenceTags();
}
public String getRawCommentText() {
return wrapped.getRawCommentText();
}
public Tag[] inlineTags() {
return wrapped.inlineTags();
}
public boolean isAnnotationType() {
return wrapped.isAnnotationType();
}
public boolean isAnnotationTypeElement() {
return wrapped.isAnnotationTypeElement();
}
public boolean isClass() {
return wrapped.isClass();
}
public boolean isConstructor() {
return wrapped.isConstructor();
}
public boolean isEnum() {
return wrapped.isEnum();
}
public boolean isEnumConstant() {
return wrapped.isEnumConstant();
}
public boolean isError() {
return wrapped.isError();
}
public boolean isException() {
return wrapped.isException();
}
public boolean isField() {
return wrapped.isField();
}
public boolean isIncluded() {
return wrapped.isIncluded();
}
public boolean isInterface() {
return wrapped.isInterface();
}
public boolean isMethod() {
return wrapped.isMethod();
}
public boolean isOrdinaryClass() {
return wrapped.isOrdinaryClass();
}
public String name() {
return wrapped.name();
}
public String[][] options() {
return wrapped.options();
}
public PackageDoc packageNamed(String arg0) {
return wrapped.packageNamed(arg0);
}
public SourcePosition position() {
return wrapped.position();
}
public void printError(SourcePosition arg0, String arg1) {
wrapped.printError(arg0, arg1);
}
public void printError(String arg0) {
wrapped.printError(arg0);
}
public void printNotice(SourcePosition arg0, String arg1) {
wrapped.printNotice(arg0, arg1);
}
public void printNotice(String arg0) {
wrapped.printNotice(arg0);
}
public void printWarning(SourcePosition arg0, String arg1) {
wrapped.printWarning(arg0, arg1);
}
public void printWarning(String arg0) {
wrapped.printWarning(arg0);
}
public SeeTag[] seeTags() {
return wrapped.seeTags();
}
public void setRawCommentText(String arg0) {
wrapped.setRawCommentText(arg0);
}
public ClassDoc[] specifiedClasses() {
return wrapped.specifiedClasses();
}
public PackageDoc[] specifiedPackages() {
return wrapped.specifiedPackages();
}
public Tag[] tags() {
return wrapped.tags();
}
public Tag[] tags(String arg0) {
return wrapped.tags(arg0);
}
}