maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Evgeny Goldin (JIRA)" <j...@codehaus.org>
Subject [jira] Commented: (MNG-5030) Provide a way to get a raw <configuration> XML for plugin to read
Date Tue, 01 Mar 2011 00:20:22 GMT

    [ http://jira.codehaus.org/browse/MNG-5030?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=258043#action_258043
] 

Evgeny Goldin commented on MNG-5030:
------------------------------------

Sure. In my plugins I [http://evgeny-goldin.com/wiki/Maven-copy-plugin#.3Cconfiguration.3E
don't like] wrapping single tag with a plural option:

{code}
<configuration>
    <tags>
        <tag>data</tag>
    </tags>
</configuration>
{code}

When there is a single tag, one can specify it:

{code}
<configuration>
    <tag>data</tag>
</configuration>
{code}

I achieve this by [https://github.com/evgeny-goldin/maven-plugins/blob/0.2.1/maven-copy-plugin/src/main/groovy/com/goldin/plugins/copy/CopyMojo.groovy#L83
having]


{code}
String   tag
String[] tags
{code}

in my POJO and then [https://github.com/evgeny-goldin/maven-plugins/blob/0.2.1/maven-copy-plugin/src/main/groovy/com/goldin/plugins/copy/CopyMojo.groovy#L88
analyze] what was actually set. The problem begins when a user does a mistake and forgets
to wrap multiple tags:


{code}
<configuration>
    <tag>data1</tag>
    <tag>data2/tag>
    <tag>data3</tag>
</configuration>
{code}

In this case Maven overrides each previous *{{<tag>}}* with the following one so in
the end when *{{execute()}}* fires only *{{<tag>data3</tag>}}* is actually set
while *{{<tag>data1</tag>}}* and *{{<tag>data2</tag>}}* are silently
ignored.

If I had *{{<configuration>}}* XML I could check this case and throw an error.

In general, having _some_ way of injection control could be very helpful.

> Provide a way to get a raw <configuration> XML for plugin to read
> -----------------------------------------------------------------
>
>                 Key: MNG-5030
>                 URL: http://jira.codehaus.org/browse/MNG-5030
>             Project: Maven 2 & 3
>          Issue Type: New Feature
>          Components: Plugin API
>    Affects Versions: 3.0.2
>            Reporter: Evgeny Goldin
>
> As a plugin author I may need to read its *{{<configuration>}}* slightly different
than Maven does it. It would be very nice to get a raw XML as an alternative to standard fields
injection.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message