1 package org.apache.maven.plugin.javadoc.stubs;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.io.File;
23 import java.io.FileReader;
24 import java.util.ArrayList;
25 import java.util.List;
26
27 import org.apache.maven.model.Build;
28 import org.apache.maven.model.Model;
29 import org.apache.maven.model.io.xpp3.MavenXpp3Reader;
30 import org.apache.maven.plugin.testing.stubs.MavenProjectStub;
31
32
33
34
35 public class PomMavenProjectStub
36 extends MavenProjectStub
37 {
38 private Build build;
39
40 public PomMavenProjectStub()
41 {
42 MavenXpp3Reader pomReader = new MavenXpp3Reader();
43 Model model = null;
44
45 try
46 {
47 model = pomReader.read( new FileReader( new File( getBasedir(), "pom-test-plugin-config.xml" ) ) );
48 setModel( model );
49 }
50 catch ( Exception e )
51 {
52 throw new RuntimeException( e );
53 }
54
55 setGroupId( model.getGroupId() );
56 setArtifactId( model.getArtifactId() );
57 setVersion( model.getVersion() );
58 setName( model.getName() );
59 setUrl( model.getUrl() );
60 setPackaging( model.getPackaging() );
61
62 Build build = new Build();
63 build.setFinalName( model.getArtifactId() );
64 build.setDirectory( super.getBasedir() + "/target/test/unit/pom-test/target" );
65 build.setSourceDirectory( getBasedir() + "/src/main/java" );
66 build.setOutputDirectory( super.getBasedir() + "/target/test/unit/pom-test/target/classes" );
67 build.setTestSourceDirectory( getBasedir() + "/src/test/java" );
68 build.setTestOutputDirectory( super.getBasedir() + "/target/test/unit/pom-test/target/test-classes" );
69 setBuild( build );
70
71 List compileSourceRoots = new ArrayList();
72 compileSourceRoots.add( getBasedir() + "/src/main/java" );
73 setCompileSourceRoots( compileSourceRoots );
74
75 List testCompileSourceRoots = new ArrayList();
76 testCompileSourceRoots.add( getBasedir() + "/src/test/java" );
77 setTestCompileSourceRoots( testCompileSourceRoots );
78 }
79
80
81
82
83 public Build getBuild()
84 {
85 return build;
86 }
87
88
89
90
91 public void setBuild( Build build )
92 {
93 this.build = build;
94 }
95
96
97
98
99 public File getBasedir()
100 {
101 return new File( super.getBasedir() + "/src/test/resources/unit/pom-test" );
102 }
103 }