1 package org.apache.maven.plugin.surefire.booterclient;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.plugin.surefire.booterclient.lazytestprovider.OutputStreamFlushableCommandline;
23 import org.apache.maven.plugin.surefire.log.api.ConsoleLogger;
24 import org.apache.maven.surefire.booter.Classpath;
25 import org.apache.maven.surefire.booter.StartupConfiguration;
26 import org.apache.maven.surefire.booter.SurefireBooterForkException;
27
28 import javax.annotation.Nonnull;
29 import javax.annotation.Nullable;
30 import java.io.File;
31 import java.util.Map;
32 import java.util.Properties;
33
34 import static org.apache.maven.shared.utils.StringUtils.join;
35
36
37
38
39
40 public final class ClasspathForkConfiguration
41 extends AbstractClasspathForkConfiguration
42 {
43 @SuppressWarnings( "checkstyle:parameternumber" )
44 public ClasspathForkConfiguration( @Nonnull Classpath bootClasspath, @Nonnull File tempDirectory,
45 @Nullable String debugLine, @Nonnull File workingDirectory,
46 @Nonnull Properties modelProperties, @Nullable String argLine,
47 @Nonnull Map<String, String> environmentVariables, boolean debug, int forkCount,
48 boolean reuseForks, @Nonnull Platform pluginPlatform,
49 @Nonnull ConsoleLogger log )
50 {
51 super( bootClasspath, tempDirectory, debugLine, workingDirectory, modelProperties, argLine,
52 environmentVariables, debug, forkCount, reuseForks, pluginPlatform, log );
53 }
54
55 @Override
56 protected void resolveClasspath( @Nonnull OutputStreamFlushableCommandline cli,
57 @Nonnull String booterThatHasMainMethod,
58 @Nonnull StartupConfiguration config )
59 throws SurefireBooterForkException
60 {
61 cli.addEnvironment( "CLASSPATH", join( toCompleteClasspath( config ).iterator(), File.pathSeparator ) );
62 cli.createArg().setValue( booterThatHasMainMethod );
63 }
64 }