Package org.apache.maven.plugin.descriptor

Examples of org.apache.maven.plugin.descriptor.Parameter


    {
        printMethodHeader();

        List params = new ArrayList();

        Parameter param = new Parameter();

        param.setName( "param1" );

        param.setExpression( "${reports}" );

        param.setEditable( false );

        params.add( param );

        Parameter param2 = new Parameter();

        param2.setName( "param2" );

        param2.setExpression( "${project.build.finalName}" );

        param2.setEditable( false );

        params.add( param2 );

        PluginParameterException error = buildException( "test", "test", params );
View Full Code Here


    public void testParamWithNonActiveExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setExpression( "${project.build.finalName" );
        param.setEditable( true );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

        {
            Map.Entry entry = (Map.Entry) it.next();

            JavaField field = (JavaField) entry.getValue();

            Parameter pd = new Parameter();

            pd.setType( field.getType().getValue() );

            pd.setDescription( field.getComment() );

            DocletTag componentTag = field.getTagByName( COMPONENT );

            if ( componentTag != null )
            {
                String role = componentTag.getNamedParameter( "role" );

                if ( role == null )
                {
                    role = field.getType().toString();
                }

                String roleHint = componentTag.getNamedParameter( "roleHint" );

                pd.setRequirement( new Requirement( role, roleHint ) );

                pd.setName( (String) entry.getKey() );
            }
            else
            {
                DocletTag parameter = field.getTagByName( PARAMETER );

                // ----------------------------------------------------------------------
                // We will look for a property name here first and use that if present
                // i.e:
                //
                // @parameter property="project"
                //
                // Which will become the name used for the configuration element which
                // will in turn will allow plexus to use the corresponding setter.
                // ----------------------------------------------------------------------

                String property = parameter.getNamedParameter( PARAMETER_PROPERTY );

                if ( !StringUtils.isEmpty( property ) )
                {
                    pd.setName( property );
                }
                else
                {
                    pd.setName( (String) entry.getKey() );
                }

                pd.setRequired( field.getTagByName( REQUIRED ) != null );

                pd.setEditable( field.getTagByName( READONLY ) == null );

                DocletTag deprecationTag = field.getTagByName( DEPRECATED );

                if ( deprecationTag != null )
                {
                    pd.setDeprecated( deprecationTag.getValue() );
                }

                String alias = parameter.getNamedParameter( "alias" );

                if ( !StringUtils.isEmpty( alias ) )
                {
                    pd.setAlias( alias );
                }

                pd.setExpression( parameter.getNamedParameter( PARAMETER_EXPRESSION ) );

                if ( "${reports}".equals( pd.getExpression() ) )
                {
                    mojoDescriptor.setRequiresReports( true );
                }

                pd.setDefaultValue( parameter.getNamedParameter( PARAMETER_DEFAULT_VALUE ) );
            }

            mojoDescriptor.addParameter( pd );
        }
    }
View Full Code Here

        {
            for ( Iterator it = parameters.iterator(); it.hasNext(); )
            {
                org.apache.maven.plugin.tools.model.Parameter param = (org.apache.maven.plugin.tools.model.Parameter) it.next();
               
                Parameter dParam = new Parameter();
                dParam.setAlias( param.getAlias() );
                dParam.setDeprecated( param.getDeprecation() );
                dParam.setDescription( param.getDescription() );
                dParam.setEditable( !param.isReadonly() );
                dParam.setExpression( param.getExpression() );
                dParam.setDefaultValue( param.getDefaultValue() );
               
                String property = param.getProperty();
                if ( StringUtils.isNotEmpty( property ) )
                {
                    dParam.setName( property );
                }
                else
                {
                    dParam.setName( param.getName() );
                }
               
                if ( StringUtils.isEmpty( dParam.getName() ) )
                {
                    throw new PluginMetadataParseException( metadataFile, "Mojo: \'" + mojo.getGoal() + "\' has a parameter without either property or name attributes. Please specify one." );
                }

                dParam.setRequired( param.isRequired() );
                dParam.setType( param.getType() );
               
                try
                {
                    descriptor.addParameter( dParam );
                }
View Full Code Here

    public void testParamWithoutExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setEditable( true );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

    public void testParamWithOneLocalRepositoryExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setExpression( "${localRepository}" );
        param.setEditable( false );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

    public void testParamWithOneSystemPropertyExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setExpression( "${maven.mode.online}" );
        param.setEditable( false );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

    public void testParamWithOneProjectBasedExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setExpression( "${project.build.finalName}" );
        param.setEditable( true );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

    public void testParamWithOneProjectAPIBasedExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setExpression( "${project.distributionManagementArtifactRepository}" );
        param.setRequired( true );
        param.setEditable( false );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

    public void testNonEditableParamWithOneProjectBasedExpression()
        throws DuplicateParameterException
    {
        printMethodHeader();

        Parameter param = new Parameter();
        param.setName( "testName" );
        param.setAlias( "testAlias" );
        param.setExpression( "${project.build.finalName}" );
        param.setEditable( false );

        PluginParameterException error = buildException( "test", "test", Collections.singletonList( param ) );

        String userMessage = diagnoser.diagnose( error );
View Full Code Here

TOP

Related Classes of org.apache.maven.plugin.descriptor.Parameter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.