[shrinkwrap-issues] [JBoss JIRA] (SHRINKWRAP-389) Allow ShrinkWrap to overwrite existing ArchivePaths
Aslak Knutsen (JIRA)
jira-events at lists.jboss.org
Wed May 30 17:09:18 EDT 2012
[ https://issues.jboss.org/browse/SHRINKWRAP-389?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12697313#comment-12697313 ]
Aslak Knutsen commented on SHRINKWRAP-389:
------------------------------------------
the new IllegalOverwriteException is causing some issues for Arquillian.
* The user adds a Package to the Deployment, Arquillian then fail to add the TestClass because it already exist in the user added Package. There is no ClassContainer.contains(Class), so Arquillian has to construct a possible ArchivePath from the Class and check if it exists already before adding. The ArchivePath change depending on Archive Type of course. (Another option is of course a try catch)
* Packaging JUnit is a bit odd. JUnit include parts of hamcrest, but if you add the full hamcrest lib to classpath as well, you now get some of the hamcrest classes twice. A Filter alla this is a possible workaround for multi includes
{code}
new Filter<ArchivePath>() {
@Override
public boolean include(ArchivePath path) {
return !archive.contains(path);
}
}
{code}
> Allow ShrinkWrap to overwrite existing ArchivePaths
> ---------------------------------------------------
>
> Key: SHRINKWRAP-389
> URL: https://issues.jboss.org/browse/SHRINKWRAP-389
> Project: ShrinkWrap
> Issue Type: Feature Request
> Reporter: Andrew Rubinger
> Labels: starter
>
> SHRINKWRAP-329 created a fail-fast (as opposed to silent no-op) approach to encountering the following case:
> {code} // Create the new archive
> final Archive<?> archive = createNewArchive();
> // Put in an asset
> final ArchivePath path = ArchivePaths.create("testPath");
> archive.add(EmptyAsset.INSTANCE, path);
> // Now try again with a new asset, and this should fail
> try {
> archive.add(new StringAsset("failContent"), path);
> } catch (final IllegalOverwriteException ioe) {
> // Good
> return;
> }{code}
> We need a feature now to disable this, effectively a boolean flag for each of the archive "add" methods to allow overwriting. Will encompass API changes.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the shrinkwrap-issues
mailing list