1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.cling.invoker.mvn;
20
21 import java.io.InputStream;
22 import java.io.OutputStream;
23 import java.nio.file.Path;
24 import java.util.List;
25 import java.util.Map;
26
27 import org.apache.maven.api.annotations.Nonnull;
28 import org.apache.maven.api.cli.ParserRequest;
29 import org.apache.maven.api.cli.extensions.CoreExtension;
30 import org.apache.maven.api.cli.mvn.MavenInvokerRequest;
31 import org.apache.maven.api.cli.mvn.MavenOptions;
32 import org.apache.maven.cling.invoker.BaseInvokerRequest;
33
34 import static java.util.Objects.requireNonNull;
35
36
37
38
39
40
41 public class DefaultMavenInvokerRequest<O extends MavenOptions> extends BaseInvokerRequest<O>
42 implements MavenInvokerRequest<O> {
43 private final O options;
44
45 @SuppressWarnings("ParameterNumber")
46 public DefaultMavenInvokerRequest(
47 ParserRequest parserRequest,
48 Path cwd,
49 Path installationDirectory,
50 Path userHomeDirectory,
51 Map<String, String> userProperties,
52 Map<String, String> systemProperties,
53 Path topDirectory,
54 Path rootDirectory,
55 InputStream in,
56 OutputStream out,
57 OutputStream err,
58 List<CoreExtension> coreExtensions,
59 O options) {
60 super(
61 parserRequest,
62 cwd,
63 installationDirectory,
64 userHomeDirectory,
65 userProperties,
66 systemProperties,
67 topDirectory,
68 rootDirectory,
69 in,
70 out,
71 err,
72 coreExtensions);
73 this.options = requireNonNull(options);
74 }
75
76
77
78
79 @Nonnull
80 public O options() {
81 return options;
82 }
83 }