Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- diff --git a/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/DependencyBuilder.java b/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/DependencyBuilder.java
- index ee4c3d8..d6ff4d3 100644
- --- a/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/DependencyBuilder.java
- +++ b/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/DependencyBuilder.java
- @@ -16,6 +16,7 @@
- */
- package org.jboss.shrinkwrap.dependencies;
- +import java.io.File;
- import java.util.Collection;
- import org.jboss.shrinkwrap.api.Archive;
- @@ -96,6 +97,24 @@ public interface DependencyBuilder<T extends DependencyBuilder<T>>
- * @throws DependencyException
- */
- Archive<?>[] resolve(DependencyFilter<T> filter) throws DependencyException;
- +
- + /**
- + * Resolves dependencies for dependency builder
- + *
- + * @return An array of Files which contains resolved artifacts.
- + * @throws DependencyException If artifacts could not be resolved
- + */
- + File[] resolveAsFiles() throws DependencyException;
- +
- + /**
- + * Resolves dependencies for dependency builder.
- + * Uses a filter to limit dependency tree
- + *
- + * @param filter The filter to limit the dependencies during resolution
- + * @return An array of Files which contains resolved artifacts
- + * @throws DependencyException
- + */
- + File[] resolveAsFiles(DependencyFilter<T> filter) throws DependencyException;
- }
- /**
- diff --git a/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/impl/MavenDependencies.java b/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/impl/MavenDependencies.java
- index 94b8d19..f4a2ee9 100644
- --- a/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/impl/MavenDependencies.java
- +++ b/extension-dependencies/src/main/java/org/jboss/shrinkwrap/dependencies/impl/MavenDependencies.java
- @@ -65,6 +65,7 @@ public class MavenDependencies implements DependencyBuilder<MavenDependencies>
- private static final Logger log = Logger.getLogger(MavenDependencies.class.getName());
- private static final Archive<?>[] ARCHIVE_CAST = new Archive<?>[0];
- + private static final File[] FILE_CAST = new File[0];
- private static final Pattern COORDINATES_PATTERN = Pattern.compile("([^: ]+):([^: ]+)(:([^: ]*)(:([^: ]+))?)?(:([^: ]+))?");
- @@ -312,6 +313,32 @@ public class MavenDependencies implements DependencyBuilder<MavenDependencies>
- {
- Validate.notEmpty(dependencies, "No dependencies were set for resolution");
- + File[] files = resolveAsFiles(filter);
- + Collection<Archive<?>> archives = new ArrayList<Archive<?>>(files.length);
- + for (File file : files)
- + {
- + Archive<?> archive = ShrinkWrap.create(JavaArchive.class, file.getName()).as(ZipImporter.class).importFrom(convert(file)).as(JavaArchive.class);
- + archives.add(archive);
- + }
- +
- + return archives.toArray(ARCHIVE_CAST);
- + }
- +
- + /* (non-Javadoc)
- + * @see org.jboss.shrinkwrap.dependencies.DependencyBuilder.ArtifactBuilder#resolveAsFiles()
- + */
- + public File[] resolveAsFiles() throws DependencyException
- + {
- + return resolveAsFiles(ACCEPT_ALL);
- + }
- +
- + /* (non-Javadoc)
- + * @see org.jboss.shrinkwrap.dependencies.DependencyBuilder.ArtifactBuilder#resolveAsFiles()
- + */
- + public File[] resolveAsFiles(DependencyFilter<MavenDependencies> filter) throws DependencyException
- + {
- + Validate.notEmpty(dependencies, "No dependencies were set for resolution");
- +
- // configure filter to have access to properties set in the parent class
- filter.configure(MavenDependencies.this);
- @@ -332,7 +359,7 @@ public class MavenDependencies implements DependencyBuilder<MavenDependencies>
- throw new DependencyException("Unable to resolve an artifact", e);
- }
- - Collection<Archive<?>> archives = new ArrayList<Archive<?>>(artifacts.size());
- + Collection<File> files = new ArrayList<File>(artifacts.size());
- for (ArtifactResult artifact : artifacts)
- {
- Artifact a = artifact.getArtifact();
- @@ -343,12 +370,10 @@ public class MavenDependencies implements DependencyBuilder<MavenDependencies>
- continue;
- }
- - File file = a.getFile();
- - Archive<?> archive = ShrinkWrap.create(JavaArchive.class, file.getName()).as(ZipImporter.class).importFrom(convert(file)).as(JavaArchive.class);
- - archives.add(archive);
- + files.add(a.getFile());
- }
- - return archives.toArray(ARCHIVE_CAST);
- + return files.toArray(FILE_CAST);
- }
- // converts a file to a ZIP file
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement