Author: cziegeler
Date: Tue Feb  2 14:21:20 2016
New Revision: 1728125

URL: http://svn.apache.org/viewvc?rev=1728125&view=rev
Log:
SLING-5477 : Allow to add an artifact of the slingstart project to the model

Modified:
    
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
    
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/PreparePackageMojo.java

Modified: 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java?rev=1728125&r1=1728124&r2=1728125&view=diff
==============================================================================
--- 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
 (original)
+++ 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/ModelPreprocessor.java
 Tue Feb  2 14:21:20 2016
@@ -179,6 +179,13 @@ public class ModelPreprocessor {
             for(final RunMode runMode : feature.getRunModes()) {
                 for(final ArtifactGroup group : runMode.getArtifactGroups()) {
                     for(final org.apache.sling.provisioning.model.Artifact a : 
group) {
+                        if ( a.getGroupId().equals(info.project.getGroupId())
+                             && 
a.getArtifactId().equals(info.project.getArtifactId())
+                             && 
a.getVersion().equals(info.project.getVersion()) ) {
+                            // skip artifact from the same project
+                            env.logger.debug("- skipping dependency " + 
a.toMvnUrl());
+                            continue;
+                        }
                         final Dependency dep = new Dependency();
                         dep.setGroupId(a.getGroupId());
                         dep.setArtifactId(a.getArtifactId());

Modified: 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/PreparePackageMojo.java
URL: 
http://svn.apache.org/viewvc/sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/PreparePackageMojo.java?rev=1728125&r1=1728124&r2=1728125&view=diff
==============================================================================
--- 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/PreparePackageMojo.java
 (original)
+++ 
sling/trunk/tooling/maven/slingstart-maven-plugin/src/main/java/org/apache/sling/maven/slingstart/PreparePackageMojo.java
 Tue Feb  2 14:21:20 2016
@@ -74,6 +74,7 @@ import org.codehaus.plexus.util.FileUtil
         threadSafe = true
     )
 public class PreparePackageMojo extends AbstractSlingStartMojo {
+
     private static final String ALL_RUNMODES_KEY = "_all_";
 
     private static final String BASE_DESTINATION = "resources";
@@ -252,8 +253,23 @@ public class PreparePackageMojo extends
     throws MojoExecutionException{
         for(final ArtifactGroup group : runMode.getArtifactGroups()) {
             for(final org.apache.sling.provisioning.model.Artifact a : group) {
-                final Artifact artifact = ModelUtils.getArtifact(this.project, 
this.mavenSession, this.artifactHandlerManager, this.resolver,
+                Artifact artifact = null;
+                if ( a.getGroupId().equals(this.project.getGroupId())
+                        && 
a.getArtifactId().equals(this.project.getArtifactId())
+                        && a.getVersion().equals(this.project.getVersion()) ) {
+                    for(final Artifact projectArtifact : 
this.project.getAttachedArtifacts()) {
+                        if ( 
projectArtifact.getClassifier().equals(a.getClassifier()) ) {
+                            artifact = projectArtifact;
+                            break;
+                        }
+                    }
+                    if ( artifact == null ) {
+                        throw new MojoExecutionException("Unable to find 
artifact from same project: " + a.toMvnUrl());
+                    }
+                } else {
+                    artifact = ModelUtils.getArtifact(this.project, 
this.mavenSession, this.artifactHandlerManager, this.resolver,
                         a.getGroupId(), a.getArtifactId(), a.getVersion(), 
a.getType(), a.getClassifier());
+                }
                 File artifactFile = artifact.getFile();
 
                 String newBSN = a.getMetadata().get("bundle:rename-bsn");


Reply via email to