1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package br.com.ingenieux.mojo.beanstalk.config;
18
19 import com.amazonaws.services.elasticbeanstalk.model.DescribeConfigurationOptionsRequest;
20 import com.amazonaws.services.elasticbeanstalk.model.OptionSpecification;
21
22 import org.apache.maven.plugin.MojoExecutionException;
23 import org.apache.maven.plugin.MojoFailureException;
24 import org.apache.maven.plugins.annotations.Mojo;
25 import org.apache.maven.plugins.annotations.Parameter;
26
27 import br.com.ingenieux.mojo.beanstalk.AbstractNeedsEnvironmentMojo;
28
29
30
31
32
33
34
35
36
37 @Mojo(name = "describe-configuration-options")
38 public class DescribeConfigurationOptionsMojo extends AbstractNeedsEnvironmentMojo {
39
40
41
42
43 @Parameter(property = "beanstalk.templateName")
44 String templateName;
45
46
47
48
49 @Parameter(property = "beanstalk.solutionStack", defaultValue = "32bit Amazon Linux running Tomcat 7")
50 String solutionStack;
51
52
53
54
55 @Parameter OptionSpecification[] optionSpecifications = new OptionSpecification[0];
56
57 protected Object executeInternal() throws MojoExecutionException, MojoFailureException {
58 DescribeConfigurationOptionsRequest req =
59 new DescribeConfigurationOptionsRequest()
60 .withApplicationName(this.applicationName)
61 .withEnvironmentName(curEnv.getEnvironmentName())
62 .withOptions(optionSpecifications)
63 .withSolutionStackName(solutionStack)
64 .withTemplateName(templateName)
65 ;
66
67 return getService().describeConfigurationOptions(req);
68 }
69 }