User: rinkrank
  Date: 02/03/25 16:16:41

  Modified:    src/xjavadoc AbstractClass.java NoopDoclet.java
                        ProxyClass.java SourceClass.java XPackage.java
  Log:
  -Fixed a bug where classes weren't added to packages
  -Fixed Constructor.name() (It used to return class' qualifiedName, which was bad)
  
  Revision  Changes    Path
  1.15      +25 -11    xjavadoc/src/xjavadoc/AbstractClass.java
  
  Index: AbstractClass.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/AbstractClass.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -w -r1.14 -r1.15
  --- AbstractClass.java        17 Mar 2002 20:44:34 -0000      1.14
  +++ AbstractClass.java        26 Mar 2002 00:16:41 -0000      1.15
  @@ -170,19 +170,12 @@
        /**
         * Sets the ContainingPackage attribute of the AbstractProgramElement object
         *
  +      * @todo we can remove this sanity check I think (small speed optimiser)
         * @param containingPackage The new ContainingPackage value
         */
        public final void setContainingPackage(String containingPackage) {
                // Do a sanity check
  -             String packageName = null;
  -             int lastDotIndex = qualifiedName().lastIndexOf('.');
  -             if (lastDotIndex == -1) {
  -                     // default package
  -                     packageName = "";
  -             }
  -             else {
  -                     packageName = qualifiedName().substring(0, lastDotIndex);
  -             }
  +             String packageName = packageNameFor(qualifiedName());
                if (!packageName.equals(containingPackage)) {
                        throw new IllegalStateException("Package mismatch. In source: 
" + containingPackage + ", from class name/file name: " + packageName);
                }
  @@ -618,11 +611,9 @@
         * @todo-javadoc Write javadocs for return value
         */
        public final boolean implementsInterface(String interfaceName) {
  -             System.out.println(qualifiedName() + " implements " + interfaceName + 
" ?");
                boolean result = false;
                XClass[] interfaces = interfaces();
                for (int i = interfaces.length - 1; i >= 0; i--) {
  -                     System.out.println(qualifiedName() + " IMPLEMENTS " + 
interfaces[i].qualifiedName());
                        if (interfaces[i].qualifiedName().equals(interfaceName)) {
                                result = true;
                                break;
  @@ -864,4 +855,27 @@
         * This method completes the class' fields, constructors and methods.
         */
        protected abstract void complete();
  +
  +
  +     /**
  +      * Describe what the method does
  +      *
  +      * @param qualifiedName Describe what the parameter does
  +      * @return Describe the return value
  +      * @todo-javadoc Write javadocs for method
  +      * @todo-javadoc Write javadocs for method parameter
  +      * @todo-javadoc Write javadocs for return value
  +      */
  +     static String packageNameFor(String qualifiedName) {
  +             String packageName = null;
  +             int lastDotIndex = qualifiedName.lastIndexOf('.');
  +             if (lastDotIndex == -1) {
  +                     // default package
  +                     packageName = "";
  +             }
  +             else {
  +                     packageName = qualifiedName.substring(0, lastDotIndex);
  +             }
  +             return packageName;
  +     }
   }
  
  
  
  1.2       +1 -0      xjavadoc/src/xjavadoc/NoopDoclet.java
  
  Index: NoopDoclet.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/NoopDoclet.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -w -r1.1 -r1.2
  --- NoopDoclet.java   20 Feb 2002 00:12:01 -0000      1.1
  +++ NoopDoclet.java   26 Mar 2002 00:16:41 -0000      1.2
  @@ -42,6 +42,7 @@
    * @author Aslak Helles�y
    * @created 19. februar 2002
    * @todo-javadoc Write javadocs
  + * @todo remove this class. It waqs only used for benchmarking
    */
   public class NoopDoclet extends Doclet {
   
  
  
  
  1.15      +3 -0      xjavadoc/src/xjavadoc/ProxyClass.java
  
  Index: ProxyClass.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/ProxyClass.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -w -r1.14 -r1.15
  --- ProxyClass.java   17 Mar 2002 20:43:27 -0000      1.14
  +++ ProxyClass.java   26 Mar 2002 00:16:41 -0000      1.15
  @@ -85,6 +85,8 @@
        public ProxyClass(String qualifiedName, boolean useNodeParser) {
                _qualifiedName = qualifiedName;
                _useNodeParser = useNodeParser;
  +             String packageName = AbstractClass.packageNameFor(qualifiedName);
  +             XJavaDoc.getInstance().addPackageMaybe(packageName).addClass(this);
                instanceCount++;
        }
   
  @@ -238,6 +240,7 @@
         * @todo-javadoc Write javadocs for return value
         */
        public long lastModified() {
  +             resolve();
                return _subject.lastModified();
        }
   
  
  
  
  1.17      +3 -3      xjavadoc/src/xjavadoc/SourceClass.java
  
  Index: SourceClass.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/SourceClass.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -w -r1.16 -r1.17
  --- SourceClass.java  25 Mar 2002 21:16:17 -0000      1.16
  +++ SourceClass.java  26 Mar 2002 00:16:41 -0000      1.17
  @@ -110,6 +110,8 @@
                                // That's tough. Shouldn't happen
                                throw new IllegalStateException("Couldn't find source 
for " + qualifiedName + " at " + sourceFile.getAbsolutePath());
                        }
  +                     String packageName = 
AbstractClass.packageNameFor(qualifiedName);
  +                     
XJavaDoc.getInstance().addPackageMaybe(packageName).addClass(this);
                }
                else {
                        // only to satisfy compiler. will never be returned.
  @@ -138,10 +140,7 @@
                if (containingClass() != null) {
                        setQualifiedName(containingClass().qualifiedName() + "." + 
name);
                        name = containingClass().name() + "." + name;
  -
  -                     System.out.println("INNER:" + name);
                }
  -
                super.setName(name);
        }
   
  @@ -196,6 +195,7 @@
        /**
         * Describe what the method does
         *
  +      * @todo do something if we get exceptions here.
         * @param useNodeParser Describe what the parameter does
         * @todo-javadoc Write javadocs for method parameter
         * @todo-javadoc Write javadocs for method parameter
  
  
  
  1.8       +21 -1     xjavadoc/src/xjavadoc/XPackage.java
  
  Index: XPackage.java
  ===================================================================
  RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/XPackage.java,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -w -r1.7 -r1.8
  --- XPackage.java     1 Mar 2002 10:44:39 -0000       1.7
  +++ XPackage.java     26 Mar 2002 00:16:41 -0000      1.8
  @@ -44,7 +44,7 @@
    * @created 3. januar 2002
    * @todo-javadoc Write javadocs
    */
  -public class XPackage {
  +public class XPackage implements Comparable {
   
        /**
         * @todo-javadoc Describe the field
  @@ -118,6 +118,21 @@
   
   
        /**
  +      * Describe what the method does
  +      *
  +      * @param o Describe what the parameter does
  +      * @return Describe the return value
  +      * @todo-javadoc Write javadocs for method
  +      * @todo-javadoc Write javadocs for method parameter
  +      * @todo-javadoc Write javadocs for return value
  +      */
  +     public int compareTo(Object o) {
  +             XPackage other = (XPackage)o;
  +             return name().compareTo(other.name());
  +     }
  +
  +
  +     /**
         * Describe the method
         *
         * @param clazz Describe the method parameter
  @@ -126,6 +141,11 @@
         * @todo-javadoc Describe the method parameter
         */
        void addClass(XClass clazz) {
  +             // This is to avoid dupes. There might be a proxy already in there. 
Remove it
  +             // if a real class comes after..
  +             if (_classes.contains(clazz)) {
  +                     _classes.remove(clazz);
  +             }
                _classes.add(clazz);
        }
   }
  
  
  

_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to