[shrinkwrap-issues] [JBoss JIRA] Commented: (SHRINKWRAP-163) Make archive name optional in ShrinkWrap#create()

Dan Allen (JIRA) jira-events at lists.jboss.org
Tue May 11 11:49:26 EDT 2010


    [ https://jira.jboss.org/jira/browse/SHRINKWRAP-163?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12530177#action_12530177 ] 

Dan Allen commented on SHRINKWRAP-163:
--------------------------------------

Sounds perfect to me. Your proposal is deterministic, which is consistent with the robust nature of ShrinkWrap. We don't want to allow ShrinkWrap to be guessing at things.

To restate, if the user is supplying a name, they can do any of the following:

ShrinkWrap.create(WebArchive.class, "stocktrader.war")
ShrinkWrap.create(WebArchive.class, "stocktrader" + ExtensionType.WAR) // in this case, toString() would produce ".war"
ShrinkWrap.create(WebArchive.class, "stocktrader", ExtensionType.WAR)

But for Arquillian, they have the luxury of using:

ShrinkWrap.create(WebArchive.class)

...which is the only case where the extension will be automatically appended.

I agree that we leave the test in place for the @Deprecated methods. We should annotate the deprecated tests with @Deprecated so that we can find them when the time comes.

> Make archive name optional in ShrinkWrap#create()
> -------------------------------------------------
>
>                 Key: SHRINKWRAP-163
>                 URL: https://jira.jboss.org/jira/browse/SHRINKWRAP-163
>             Project: ShrinkWrap
>          Issue Type: Feature Request
>          Components: api
>    Affects Versions: 1.0.0-alpha-9
>            Reporter: Dan Allen
>            Assignee: Ken Gullaksen
>             Fix For: 1.0.0-alpha-10
>
>         Attachments: SHRINKWRAP-163-v1.txt
>
>
> Make the Archive type first in the API, as it allows us to introduce defaults for the name and even introduce an extension constant.
> ShrinkWrap.create(Class<T> type)
> ShrinkWrap.create(Class<T> type, String name)
> ShrinkWrap.create(Class<T> type, ExtensionType ext)  ***maybe
> ShrinkWrap.create(Class<T> type, String name, ExtensionType ext)  ***maybe
> For the simplest case (Weld SE Arquillian tests for instance), the name would be defaulted.
> ShrinkWrap.create(JavaArchive.class)
> The current usage would be flipped
> ShrinkWrap.create(JavaArchive.class, "test.jar")
> We could consider getting rid of the string-based extension classifier
> ShrinkWrap.create(JavaArchive.class, "test", JAR)
> Or, if you wanted to specify just an extension (for instance to create a WAR), you could do:
> ShrinkWrap.create(JavaArchive.class, WAR)
> To take another angle, maybe the extension can be implied based on the archive type:
> JavaArchive = ".jar"
> EnterpriseArchive = ".ear"
> WebArchive = ".war"
> In that case, we can just get back to:
> ShrinkWrap.create(WebArchive.class)

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

        


More information about the shrinkwrap-issues mailing list