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