Author: brett
Date: Wed Jul 20 20:11:07 2005
New Revision: 219990

URL: http://svn.apache.org/viewcvs?rev=219990&view=rev
Log:
refactor duplicate code

Modified:
    
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java

Modified: 
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
URL: 
http://svn.apache.org/viewcvs/maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java?rev=219990&r1=219989&r2=219990&view=diff
==============================================================================
--- 
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
 (original)
+++ 
maven/components/trunk/maven-plugins/maven-site-plugin/src/main/java/org/apache/maven/doxia/DoxiaMojo.java
 Wed Jul 20 20:11:07 2005
@@ -19,6 +19,7 @@
 import org.apache.maven.artifact.repository.ArtifactRepository;
 import org.apache.maven.artifact.resolver.ArtifactResolutionException;
 import org.apache.maven.execution.MavenSession;
+import org.apache.maven.model.ReportPlugin;
 import org.apache.maven.model.ReportSet;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
@@ -77,8 +78,10 @@
 
     private static final String DEFAULT_TEMPLATE = RESOURCE_DIR + 
"/maven-site.vm";
 
-    /** Patterns which should be excluded by default. */
-    private static final String[] DEFAULT_EXCLUDES = new String[] {
+    /**
+     * Patterns which should be excluded by default.
+     */
+    private static final String[] DEFAULT_EXCLUDES = new String[]{
         // Miscellaneous typical temporary files
         "**/*~", "**/#*#", "**/.#*", "**/%*%", "**/._*",
 
@@ -95,8 +98,8 @@
         "**/.svn", "**/.svn/**",
 
         // Mac
-        "**/.DS_Store" };
-    
+        "**/.DS_Store"};
+
     /**
      * @parameter expression="${settings}"
      * @required
@@ -219,7 +222,7 @@
             }
             catch ( MalformedURLException e )
             {
-                throw new MojoExecutionException( templateDirectory + " isn't 
a valid URL." );
+                throw new MojoExecutionException( templateDirectory + " isn't 
a valid URL.", e );
             }
         }
 
@@ -315,10 +318,10 @@
                 File generatedSiteFile = new File( generatedSiteDirectory );
                 if ( generatedSiteFile.exists() )
                 {
-                    siteRenderer.render( generatedSiteFile, 
localeOutputDirectory,
-                                         getSiteDescriptor( reports, locale ), 
template, attributes, locale );
+                    siteRenderer.render( generatedSiteFile, 
localeOutputDirectory, getSiteDescriptor( reports, locale ),
+                                         template, attributes, locale );
                 }
-                
+
                 // Generate static site
                 File siteDirectoryFile;
 
@@ -334,7 +337,7 @@
                 }
 
                 // Try to generate the index.html
-                if ( !indexExists( siteDirectoryFile ) ) 
+                if ( !indexExists( siteDirectoryFile ) )
                 {
                     getLog().info( "Generate an index file." );
                     generateIndexPage( getSiteDescriptor( reports, locale ), 
locale );
@@ -343,12 +346,12 @@
                 {
                     getLog().info( "Ignoring the index file generation." );
                 }
-                
-                siteRenderer.render( siteDirectoryFile, localeOutputDirectory,
-                                     getSiteDescriptor( reports, locale ), 
template, attributes, locale );
 
-                siteRenderer.render( siteDirectoryFile, localeOutputDirectory,
-                                     getSiteDescriptor( reports, locale ), 
template, attributes, locale );
+                siteRenderer.render( siteDirectoryFile, localeOutputDirectory, 
getSiteDescriptor( reports, locale ),
+                                     template, attributes, locale );
+
+                siteRenderer.render( siteDirectoryFile, localeOutputDirectory, 
getSiteDescriptor( reports, locale ),
+                                     template, attributes, locale );
 
                 File cssDirectory = new File( siteDirectory, "css" );
                 File imagesDirectory = new File( siteDirectory, "images" );
@@ -402,9 +405,8 @@
             }
             else
             {
-                throw new MojoExecutionException(
-                    "'" + report.getCategoryName() + "' category define for " 
+ report.getName( defaultLocale ) +
-                        " mojo isn't valid." );
+                throw new MojoExecutionException( "'" + 
report.getCategoryName() + "' category define for " +
+                    report.getName( defaultLocale ) + " mojo isn't valid." );
             }
         }
     }
@@ -413,47 +415,42 @@
     {
         StringBuffer buffer = new StringBuffer();
         buffer.append( "<menu name=\"Project Documentation\">\n" );
-        buffer.append(
-            "    <item name=\"" + i18n.getString( "site-plugin", locale, 
"report.menu.about" ) + " " +
-                project.getName() + "\" href=\"/index.html\"/>\n" );
+        buffer.append( "    <item name=\"" );
+        buffer.append( i18n.getString( "site-plugin", locale, 
"report.menu.about" ) );
+        buffer.append( " " );
+        buffer.append( project.getName() );
+        buffer.append( "\" href=\"/index.html\"/>\n" );
 
-        if ( projectInfos.size() > 0 )
-        {
-            buffer.append(
-                "    <item name=\"" + i18n.getString( "site-plugin", locale, 
"report.menu.projectinformation" ) +
-                    "\" href=\"/project-info.html\" collapse=\"true\">\n" );
+        writeReportSubMenu( projectInfos, buffer, locale, 
"report.menu.projectinformation", "project-info.html" );
+        writeReportSubMenu( projectReports, buffer, locale, 
"report.menu.projectreports", "maven-reports.html" );
 
-            for ( Iterator i = projectInfos.iterator(); i.hasNext(); )
-            {
-                MavenReport report = (MavenReport) i.next();
-                buffer.append(
-                    "        <item name=\"" + report.getName( locale ) + "\" 
href=\"/" + report.getOutputName() +
-                        ".html\"/>\n" );
-            }
+        buffer.append( "</menu>\n" );
 
-            buffer.append( "    </item>\n" );
-        }
+        return buffer.toString();
+    }
 
-        if ( projectReports.size() > 0 )
+    private void writeReportSubMenu( List reports, StringBuffer buffer, Locale 
locale, String key, String indexFilename )
+    {
+        if ( reports.size() > 0 )
         {
-            buffer.append(
-                "    <item name=\"" + i18n.getString( "site-plugin", locale, 
"report.menu.projectreports" ) +
-                    "\" href=\"/maven-reports.html\" collapse=\"true\">\n" );
+            buffer.append( "    <item name=\"" );
+            buffer.append( i18n.getString( "site-plugin", locale, key ) );
+            buffer.append( "\" href=\"/" );
+            buffer.append( indexFilename );
+            buffer.append( "\" collapse=\"true\">\n" );
 
-            for ( Iterator i = projectReports.iterator(); i.hasNext(); )
+            for ( Iterator i = reports.iterator(); i.hasNext(); )
             {
                 MavenReport report = (MavenReport) i.next();
-                buffer.append(
-                    "        <item name=\"" + report.getName( locale ) + "\" 
href=\"/" + report.getOutputName() +
-                        ".html\"/>\n" );
+                buffer.append( "        <item name=\"" );
+                buffer.append( report.getName( locale ) );
+                buffer.append( "\" href=\"/" );
+                buffer.append( report.getOutputName() );
+                buffer.append( ".html\"/>\n" );
             }
 
             buffer.append( "    </item>\n" );
         }
-
-        buffer.append( "</menu>\n" );
-
-        return buffer.toString();
     }
 
     /**
@@ -464,7 +461,7 @@
     {
         File siteDescriptor = new File( siteDirectory, "site_" + 
locale.getLanguage() + ".xml" );
 
-        String siteDescriptorContent = "";
+        String siteDescriptorContent;
 
         try
         {
@@ -475,7 +472,7 @@
             else
             {
                 siteDescriptor = new File( siteDirectory, "site.xml" );
-                
+
                 if ( siteDescriptor.exists() )
                 {
                     siteDescriptorContent = FileUtils.fileRead( siteDescriptor 
);
@@ -526,7 +523,7 @@
     /**
      * Try to find a file called "index" in each sub-directory from the site 
directory.
      * We don't care about the extension.
-     * 
+     *
      * @param siteDirectoryFile the site directory
      * @return true if an index file was found, false otherwise
      * @throws Exception if any
@@ -536,63 +533,68 @@
     {
         getLog().debug( "Try to find an index file in the directory=[" + 
siteDirectoryFile + "]" );
 
-        File[] directories = siteDirectoryFile.listFiles( new FileFilter() {
-            public boolean accept(File file) {
-                for ( int i = 0; i < DEFAULT_EXCLUDES.length; i++) {
-                    if ( SelectorUtils.matchPath( DEFAULT_EXCLUDES[i], 
file.getName() ) ) {
+        File[] directories = siteDirectoryFile.listFiles( new FileFilter()
+        {
+            public boolean accept( File file )
+            {
+                for ( int i = 0; i < DEFAULT_EXCLUDES.length; i++ )
+                {
+                    if ( SelectorUtils.matchPath( DEFAULT_EXCLUDES[i], 
file.getName() ) )
+                    {
                         return false;
                     }
                 }
 
                 return file.isDirectory();
             }
-        });
-        
-        if ( ( directories == null ) || ( directories.length  == 0 ) )
+        } );
+
+        if ( directories == null || directories.length == 0 )
         {
             return false;
         }
-        
+
         List indexFound = new ArrayList();
         for ( int i = 0; i < directories.length; i++ )
         {
             List indexes = FileUtils.getFiles( directories[i], "index.*", 
null, true );
-            
-            if ( indexes.size() > 1 ) 
+
+            if ( indexes.size() > 1 )
             {
-                getLog().warn( "More than one index file exists in this 
directory [" + directories[i].getAbsolutePath() + "]." );
+                getLog().warn(
+                    "More than one index file exists in this directory [" + 
directories[i].getAbsolutePath() + "]." );
                 continue;
             }
 
-            if ( indexes.size() == 1 ) 
+            if ( indexes.size() == 1 )
             {
-                getLog().debug( "Found [" + indexes.get(0) + "]" );
+                getLog().debug( "Found [" + indexes.get( 0 ) + "]" );
 
-                indexFound.add(indexes.get(0));
+                indexFound.add( indexes.get( 0 ) );
             }
         }
 
-        if ( indexFound.size() > 1 ) 
+        if ( indexFound.size() > 1 )
         {
             // TODO throw an Exception?
             getLog().warn( "More than one index file exists in the project 
site directory. Checks the result." );
             return true;
         }
-        if ( indexFound.size() == 1 ) 
+        if ( indexFound.size() == 1 )
         {
             getLog().warn( "One index file was found in the project site 
directory." );
             return true;
         }
-        
+
         return false;
     }
-    
+
     /**
      * Generated an index page.
-     * 
-     * @param siteDescriptor 
-     * @param locale 
-     * @throws Exception 
+     *
+     * @param siteDescriptor
+     * @param locale
+     * @throws Exception
      */
     private void generateIndexPage( InputStream siteDescriptor, Locale locale )
         throws Exception
@@ -636,7 +638,7 @@
         siteRenderer.generateDocument( new FileWriter( new File( 
getOuputDirectory( locale ), outputFileName ) ),
                                        template, attributes, sink, locale );
     }
-    
+
     private void generateProjectInfoPage( InputStream siteDescriptor, Locale 
locale )
         throws Exception
     {
@@ -904,7 +906,7 @@
         {
             for ( Iterator it = reportPlugins.iterator(); it.hasNext(); )
             {
-                org.apache.maven.model.ReportPlugin reportPlugin = 
(org.apache.maven.model.ReportPlugin) it.next();
+                ReportPlugin reportPlugin = (ReportPlugin) it.next();
 
 //                try
 //                {
@@ -927,11 +929,7 @@
 
                     if ( reportSets == null || reportSets.isEmpty() )
                     {
-                        reportsList = pluginManager.getReports( reportPlugin,
-                                                                null,
-                                                                project,
-                                                                session,
-                                                                
localRepository );
+                        reportsList = pluginManager.getReports( reportPlugin, 
null, project, session, localRepository );
 
                     }
                     else
@@ -940,10 +938,7 @@
                         {
                             ReportSet reportSet = (ReportSet) j.next();
 
-                            reportsList = pluginManager.getReports( 
reportPlugin,
-                                                                    reportSet,
-                                                                    project,
-                                                                    session,
+                            reportsList = pluginManager.getReports( 
reportPlugin, reportSet, project, session,
                                                                     
localRepository );
                         }
                     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to