You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2019/07/04 21:20:04 UTC

[maven-jxr] 02/06: Introduce PackageInfo

This is an automated email from the ASF dual-hosted git repository.

rfscholte pushed a commit to branch JXR-142
in repository https://gitbox.apache.org/repos/asf/maven-jxr.git

commit 3759ef8183088e146f0c3410289396a28948e2ba
Author: rfscholte <rf...@apache.org>
AuthorDate: Sun Nov 11 13:23:46 2018 +0100

    Introduce PackageInfo
---
 .../org/apache/maven/jxr/DirectoryIndexer.java     | 87 +++++++++++++++++-----
 1 file changed, 70 insertions(+), 17 deletions(-)

diff --git a/maven-jxr/src/main/java/org/apache/maven/jxr/DirectoryIndexer.java b/maven-jxr/src/main/java/org/apache/maven/jxr/DirectoryIndexer.java
index 84ee7bf..cccbb74 100644
--- a/maven-jxr/src/main/java/org/apache/maven/jxr/DirectoryIndexer.java
+++ b/maven-jxr/src/main/java/org/apache/maven/jxr/DirectoryIndexer.java
@@ -27,7 +27,6 @@ import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.Enumeration;
 import java.util.HashMap;
-import java.util.Iterator;
 import java.util.Map;
 import java.util.TreeMap;
 
@@ -240,15 +239,12 @@ public class DirectoryIndexer
         doVelocity( "allclasses-frame", root, context, engine );
         doVelocity( "overview-summary", root, context, engine );
 
-        Iterator<Map<String, ?>> iter = ( (Map) info.get( "allPackages" ) ).values().iterator();
-        while ( iter.hasNext() )
+        for ( PackageInfo pkgInfo : ( (Map<String, PackageInfo>) info.get( "allPackages" ) ).values() )
         {
-            Map pkgInfo = iter.next();
-
             VelocityContext subContext = new VelocityContext( context );
             subContext.put( "pkgInfo", pkgInfo );
 
-            String outDir = root + '/' + pkgInfo.get( "dir" );
+            String outDir = root + '/' + pkgInfo.getDir();
             doVelocity( "package-summary", outDir, subContext, engine );
             doVelocity( "package-frame", outDir, subContext, engine );
         }
@@ -333,7 +329,7 @@ public class DirectoryIndexer
      */
     Map<String, Map<String, ?>> getPackageInfo()
     {
-        Map<String, Map<String, Object>> allPackages = new TreeMap<>();
+        Map<String, PackageInfo> allPackages = new TreeMap<>();
         Map<String, ClassInfo> allClasses = new TreeMap<>();
 
         Enumeration<PackageType> packages = packageManager.getPackageTypes();
@@ -361,7 +357,9 @@ public class DirectoryIndexer
 
                 String className = clazz.getName();
                 
-                ClassInfo classInfo = new ClassInfo( className, pkgDir, clazz.getFilename() );
+                ClassInfo classInfo = new ClassInfo( className, pkgDir );
+                
+                classInfo.setFilename( clazz.getFilename() );
 
                 pkgClasses.put( className, classInfo );
                 
@@ -370,11 +368,10 @@ public class DirectoryIndexer
                 allClasses.put( className + "#" + pkgName, classInfo );
             }
 
-            Map<String, Object> pkgInfo = new HashMap<>();
-            pkgInfo.put( "name", pkgName );
-            pkgInfo.put( "dir", pkgDir );
-            pkgInfo.put( "classes", pkgClasses );
-            pkgInfo.put( "rootRef", rootRef );
+            PackageInfo pkgInfo = new PackageInfo( pkgName, pkgDir );
+            pkgInfo.setClasses( pkgClasses );
+            pkgInfo.setRootRef( rootRef );
+
             allPackages.put( pkgName, pkgInfo );
         }
 
@@ -386,6 +383,58 @@ public class DirectoryIndexer
     }
     
     /**
+     * 
+     * @author Robert Scholte
+     * @since 3.2.0
+     */
+    public static class PackageInfo
+    {
+        private final String name;
+        
+        private final String dir;
+
+        Map<String, ClassInfo> classes;
+        
+        private String rootRef;
+        
+        public PackageInfo( String name, String dir )
+        {
+            this.name = name;
+            this.dir = dir;
+        }
+        
+        public String getName()
+        {
+            return name;
+        }
+        
+        public String getDir()
+        {
+            return dir;
+        }
+        
+        public void setClasses( Map<String, ClassInfo> classes )
+        {
+            this.classes = classes;
+        }
+        
+        public Map<String, ClassInfo> getClasses()
+        {
+            return classes;
+        }
+        
+        public void setRootRef( String rootRef )
+        {
+            this.rootRef = rootRef;
+        }
+        
+        public String getRootRef()
+        {
+            return rootRef;
+        }
+    }
+    
+    /**
      * Holds class information
      * 
      * @author Robert Scholte
@@ -393,18 +442,17 @@ public class DirectoryIndexer
      */
     public static class ClassInfo
     {
-        private String name;
+        private final String name;
         
-        private String dir;
+        private final String dir;
         
         private String filename;
 
-        public ClassInfo( String name, String dir, String filename )
+        public ClassInfo( String name, String dir )
         {
             super();
             this.name = name;
             this.dir = dir;
-            this.filename = filename;
         }
         
         public String getName()
@@ -417,6 +465,11 @@ public class DirectoryIndexer
             return dir;
         }
         
+        public void setFilename( String filename )
+        {
+            this.filename = filename;
+        }
+        
         public String getFilename()
         {
             return filename;