1 package org.apache.maven.plugin.surefire.util;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import javax.annotation.Nonnull;
24 import javax.annotation.Nullable;
25
26
27
28
29
30
31 public class Relocator
32 {
33 private final @Nullable String relocation;
34
35 private static final String relocationBase = "org.apache.maven.surefire.";
36
37
38 public Relocator( @Nullable String relocation )
39 {
40 this.relocation = relocation;
41 }
42
43 public Relocator()
44 {
45 relocation = "shadefire";
46 }
47
48 private @Nullable String getRelocation()
49 {
50 return relocation;
51 }
52
53 public @Nonnull String relocate( @Nonnull String className )
54 {
55 if ( relocation == null )
56 {
57 return className;
58 }
59 if ( className.contains( relocation ) )
60 {
61 return className;
62 }
63 String rest = className.substring( "org.apache.maven.surefire.".length() );
64 final String s = relocationBase + getRelocation() + ".";
65 return s + rest;
66 }
67 }