Update of /cvsroot/xdoclet/xjavadoc/src/xjavadoc
In directory sc8-pr-cvs1:/tmp/cvs-serv16055/xjavadoc/src/xjavadoc

Modified Files:
        SourceClass.java XJavaDoc.java XJavaDocTest.java 
Log Message:
Fixed XJD-8.

Index: SourceClass.java
===================================================================
RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/SourceClass.java,v
retrieving revision 1.49
retrieving revision 1.50
diff -C2 -r1.49 -r1.50
*** SourceClass.java    30 Oct 2002 02:02:34 -0000      1.49
--- SourceClass.java    22 Nov 2002 23:52:24 -0000      1.50
***************
*** 28,31 ****
--- 28,33 ----
        private final static JavaParser _simpleParser = new SimpleParser();
  
+       private final boolean _isExtraClass;
+ 
        /**
         * The root node of the AST
***************
*** 48,52 ****
  
        /**
!        * Constructor to use for inner classes
         *
         * @param containingClass  The containing class;
--- 50,54 ----
  
        /**
!        * Constructor to use for inner classes.
         *
         * @param containingClass  The containing class;
***************
*** 56,59 ****
--- 58,76 ----
                super( containingClass );
                setContainingPackage( containingClass.getContainingPackage().getName() 
);
+               _isExtraClass = false;
+       }
+ 
+       /**
+        * Constructor to use for "extra" classes, that is, secondary classes that
+        * figure in the same source.
+        *
+        * @param containingClass  The containing class;
+        * @param dummy
+        */
+       public SourceClass( SourceClass containingClass, int dummy )
+       {
+               super( null );
+               setContainingPackage( containingClass.getContainingPackage().getName() 
+);
+               _isExtraClass = true;
        }
  
***************
*** 100,103 ****
--- 117,125 ----
        }
  
+       /**
+        * @param sourceFile
+        * @param useNodeParser
+        * @deprecated           Use a method that doesn't take qualifiedName
+        */
        public SourceClass( File sourceFile, boolean useNodeParser )
        {
***************
*** 133,136 ****
--- 155,159 ----
                instanceCount++;
                _dirty = false;
+               _isExtraClass = false;
        }
  
***************
*** 147,150 ****
--- 170,178 ----
        {
                return qualifiedName.replace( '.', File.separatorChar ) + ".java";
+       }
+ 
+       public boolean isExtraClass()
+       {
+               return _isExtraClass;
        }
  

Index: XJavaDoc.java
===================================================================
RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/XJavaDoc.java,v
retrieving revision 1.62
retrieving revision 1.63
diff -C2 -r1.62 -r1.63
*** XJavaDoc.java       30 Oct 2002 22:36:43 -0000      1.62
--- XJavaDoc.java       22 Nov 2002 23:52:24 -0000      1.63
***************
*** 782,789 ****
        void addSourceClass( SourceClass sourceClass )
        {
                _allSourceClasses.put( sourceClass.getQualifiedName(), sourceClass );
  
                // Also add it to _sourceSetSourceClasses if it was among the source 
sets
!               if( _sourceSetClassNames.contains( sourceClass.getQualifiedName() ) )
                {
                        _sourceSetSourceClasses.put( sourceClass.getQualifiedName(), 
sourceClass );
--- 782,791 ----
        void addSourceClass( SourceClass sourceClass )
        {
+               System.out.println( sourceClass.isExtraClass() + ":" + 
+sourceClass.getQualifiedName() );
                _allSourceClasses.put( sourceClass.getQualifiedName(), sourceClass );
  
                // Also add it to _sourceSetSourceClasses if it was among the source 
sets
!               // or if it is an "extra" class (this is due to XJD-8)
!               if( _sourceSetClassNames.contains( sourceClass.getQualifiedName() ) || 
sourceClass.isExtraClass() )
                {
                        _sourceSetSourceClasses.put( sourceClass.getQualifiedName(), 
sourceClass );

Index: XJavaDocTest.java
===================================================================
RCS file: /cvsroot/xdoclet/xjavadoc/src/xjavadoc/XJavaDocTest.java,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -r1.41 -r1.42
*** XJavaDocTest.java   6 Nov 2002 21:25:46 -0000       1.41
--- XJavaDocTest.java   22 Nov 2002 23:52:24 -0000      1.42
***************
*** 80,85 ****
                XClass clazz = XJavaDoc.getInstance().getXClass( "Hello" );
  
-               System.out.println( "AAAAAAAAAAAAAAAAAA" + clazz.getClass().getName() 
);
- 
                XDoc doc = clazz.getDoc();
  
--- 80,83 ----
***************
*** 210,216 ****
                assertEquals( 2, innerClasses.size() );
  
!               XClass innerClass = ( XClass ) innerClasses.iterator().next();
  
                assertEquals( "Hello.InnerClass", innerClass.getQualifiedName() );
        }
  
--- 208,220 ----
                assertEquals( 2, innerClasses.size() );
  
!               Iterator i = innerClasses.iterator();
! 
!               XClass innerClass = ( XClass ) i.next();
  
                assertEquals( "Hello.InnerClass", innerClass.getQualifiedName() );
+ 
+               XClass methodInnerClass = ( XClass ) i.next();
+ 
+               assertEquals( "Hello.MethodInnerClass", 
+methodInnerClass.getQualifiedName() );
        }
  
***************
*** 404,407 ****
--- 408,423 ----
                        }
                }
+       }
+ 
+       public void testOldFashioned() throws Exception
+       {
+               // We have to tell xjavadoc to get all source classes. otherwise it 
+will think
+               // OldFashioned doesn't exist and return an UnknownClass
+               XJavaDoc.getInstance().getSourceClasses();
+ 
+               XClass clazz = XJavaDoc.getInstance().getXClass( "OldFashioned" );
+ 
+               assertEquals( SourceClass.class, clazz.getClass() );
+               assertTrue( "OldFashioned isn't an inner class", !clazz.isInner() );
        }
  }



-------------------------------------------------------
This sf.net email is sponsored by:ThinkGeek
Welcome to geek heaven.
http://thinkgeek.com/sf
_______________________________________________
Xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to