Author: jstrachan Date: Sat Mar 16 09:48:13 2013 New Revision: 1457229 URL: http://svn.apache.org/r1457229 Log: fixes CAMEL-6169 so that the camelComponent.properties file is deployed into the maven repository; so folks can easily search for classifier "camelComponent" and extension "properties" to find all the camel components in a maven repo (from version 2.11 onwards)
Modified: camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java Modified: camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java URL: http://svn.apache.org/viewvc/camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java?rev=1457229&r1=1457228&r2=1457229&view=diff ============================================================================== --- camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java (original) +++ camel/trunk/tooling/maven/camel-package-maven-plugin/src/main/java/org/apache/camel/maven/packaging/PackageMojo.java Sat Mar 16 09:48:13 2013 @@ -25,6 +25,7 @@ import org.apache.maven.plugin.AbstractM import org.apache.maven.plugin.MojoExecutionException; import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.project.MavenProject; +import org.apache.maven.project.MavenProjectHelper; /** * Analyses the Camel plugins in a project and generates extra descriptor information for easier auto-discovery in Camel. @@ -51,6 +52,13 @@ public class PackageMojo extends Abstrac */ protected File outDir; + /** + * Maven ProjectHelper. + * + * @component + * @readonly + */ + private MavenProjectHelper projectHelper; /** * Execute goal. @@ -88,6 +96,10 @@ public class PackageMojo extends Abstrac try { properties.store(new FileWriter(outFile), "Generated by camel-package-maven-plugin"); getLog().info("Generated " + outFile + " containing the Camel " + (files.length > 1 ? "components " : "component ") + names); + + if (projectHelper != null) { + projectHelper.attachArtifact( this.project, "properties", "camelComponent", outFile); + } } catch (IOException e) { throw new MojoExecutionException("Failed to write properties to " + outFile + ". Reason: " + e, e); }