Refactor Code NodeTemplateOperation
[sdc.git] / openecomp-be / tools / artifact-copy-plugin / src / main / java / org / openecomp / sdc / onboarding / util / CalibrateArtifactPlugin.java
1 package org.openecomp.sdc.onboarding.util;
2
3 import org.apache.maven.execution.MavenSession;
4 import org.apache.maven.plugin.AbstractMojo;
5 import org.apache.maven.plugin.MojoExecutionException;
6 import org.apache.maven.plugin.MojoFailureException;
7 import org.apache.maven.plugins.annotations.*;
8 import org.apache.maven.project.MavenProject;
9 import org.apache.maven.project.MavenProjectHelper;
10
11 import java.io.File;
12 import java.io.IOException;
13
14 @Mojo(name = "calibrate-artifact-helper", threadSafe = true, defaultPhase = LifecyclePhase.INSTALL,
15         requiresDependencyResolution = ResolutionScope.TEST)
16 public class CalibrateArtifactPlugin extends AbstractMojo {
17
18     private static final String ARTIFACT_COPY_PATH = "artifactPathToCopy";
19
20     @Parameter(defaultValue = "${session}")
21     private MavenSession session;
22     @Parameter(defaultValue = "${project}", readonly = true)
23     private MavenProject project;
24     @Component
25     private MavenProjectHelper projectHelper;
26     @Parameter
27     private String groupId;
28     @Parameter
29     private String artifactId;
30     @Parameter
31     private String version;
32     @Parameter
33     private String excludePackaging;
34     @Parameter
35     private ArtifactHelper artifactHelper;
36
37     @Override
38     public void execute() throws MojoExecutionException, MojoFailureException {
39         if (project.getPackaging().equals(excludePackaging)) {
40             return;
41         }
42         if (project.getProperties().containsKey(ARTIFACT_COPY_PATH)
43                     && project.getProperties().getProperty(ARTIFACT_COPY_PATH) != null) {
44             File f = new File(project.getProperties().getProperty(ARTIFACT_COPY_PATH));
45             if (f.exists()) {
46                 project.getArtifact().setFile(f);
47             }
48         }
49         try {
50             artifactHelper.shutDown(project);
51         } catch (IOException | ClassNotFoundException e) {
52             throw new MojoExecutionException("Unexpected Error Occured during shutdown activities", e);
53         }
54     }
55 }