Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  package org.apache.maven.plugins.help;
  
  /*
   * Licensed to the Apache Software Foundation (ASF) under one
   * or more contributor license agreements.  See the NOTICE file
   * distributed with this work for additional information
   * regarding copyright ownership.  The ASF licenses this file
   * to you under the Apache License, Version 2.0 (the
   * "License"); you may not use this file except in compliance
  * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing,
  * software distributed under the License is distributed on an
  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
  */
 
 
 import java.util.List;
 import java.util.Map;

Displays the supported Plugin expressions used by Maven.

Author(s):
Vincent Siveton
Version:
$Id: ExpressionsMojo.java 1446806 2013-02-15 23:07:28Z rfscholte $
Since:
2.1
 
 @Mojo( name = "expressions", requiresProject = false )
 public class ExpressionsMojo
     extends AbstractHelpMojo
 {
    
English sentence when no description exists
 
     private static final String NO_DESCRIPTION_AVAILABLE = "No description available.";
 
     // ----------------------------------------------------------------------
     // Public methods
     // ----------------------------------------------------------------------
 
    
 
     public void execute()
     {
         Map<StringExpressionm;
         try
         {
             m = ExpressionDocumenter.load();
         }
         catch ( ExpressionDocumentationException e )
         {
             throw new MojoExecutionException"ExpressionDocumentationException: " + e.getMessage(), e );
         }
 
         StringBuilder sb = new StringBuilder();
         sb.append"Maven supports the following Plugin expressions:\n\n" );
         for ( String expression : getExpressionsRoot() )
         {
             sb.append"${" ).appendexpression ).append"}: " );
             sb.append );
             sb.append"\n\n" );
         }
 
         for ( Map.Entry<StringExpressionentry : m.entrySet() )
         {
             String key = entry.getKey();
             Expression expression = entry.getValue();
 
             sb.append"${" ).appendkey ).append"}: " );
             sb.appendtrimCDATAexpression.getDescription() ) );
             sb.append"\n\n" );
         }
 
         if (  != null )
         {
             try
             {
                 writeFilesb );
             }
             catch ( IOException e )
             {
                 throw new MojoExecutionException"Cannot write plugins expressions description to output: "
                     + e );
             }
 
             if ( getLog().isInfoEnabled() )
            {
                getLog().info"Wrote descriptions to: " +  );
            }
        }
        else
        {
            if ( getLog().isInfoEnabled() )
            {
                getLog().infosb.toString() );
            }
        }
    }
    // ----------------------------------------------------------------------
    // Private methods
    // ----------------------------------------------------------------------

    

Returns:
the value of the private static field ExpressionDocumenter#EXPRESSION_ROOTS.
Throws:
org.apache.maven.plugin.MojoFailureException if any reflection exceptions occur
org.apache.maven.plugin.MojoExecutionException if no value exists for ExpressionDocumenter#EXPRESSION_ROOTS
    private static List<StringgetExpressionsRoot()
    {
        try
        {
            Field f = ExpressionDocumenter.class.getDeclaredField"EXPRESSION_ROOTS" );
            f.setAccessibletrue );
            String[] value = (String[]) f.getnew ExpressionDocumenter() );
            if ( value == null )
            {
                throw new MojoExecutionException"org.apache.maven.usability.plugin.ExpressionDocumenter#"
                    + "EXPRESSION_ROOTS has no value." );
            }
            return Arrays.asListvalue );
        }
        catch ( SecurityException e )
        {
            throw new MojoFailureException"SecurityException: " + e.getMessage() );
        }
        catch ( IllegalArgumentException e )
        {
            throw new MojoFailureException"IllegalArgumentException: " + e.getMessage() );
        }
        catch ( NoSuchFieldException e )
        {
            throw new MojoFailureException"NoSuchFieldException: " + e.getMessage() );
        }
        catch ( IllegalAccessException e )
        {
            throw new MojoFailureException"IllegalAccessException: " + e.getMessage() );
        }
    }

    

Parameters:
description could be null
Returns:
the given description without any new line, or NO_DESCRIPTION_AVAILABLE value if description is null.
See also:
NO_DESCRIPTION_AVAILABLE
    private static String trimCDATAString description )
    {
        if ( StringUtils.isEmptydescription ) )
        {
            return ;
        }
        StringBuilder sb = new StringBuilder();
        String[] lines = StringUtils.splitdescription"\r\n" );
        for ( int i = 0; i < lines.lengthi++ )
        {
            sb.append( StringUtils.trimlines[i] ) ).append" " );
        }
        return sb.toString();
    }
New to GrepCode? Check out our FAQ X