Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
Build |
|
| 1.3125;1.312 |
1 | /* | |
2 | * $Id$ | |
3 | */ | |
4 | ||
5 | package org.apache.maven.model; | |
6 | ||
7 | //---------------------------------/ | |
8 | //- Imported classes and packages -/ | |
9 | //---------------------------------/ | |
10 | ||
11 | import java.util.Date; | |
12 | ||
13 | /** | |
14 | * | |
15 | * | |
16 | * The <code><build></code> element contains | |
17 | * informations required to build the project. | |
18 | * | |
19 | * | |
20 | * | |
21 | * @version $Revision$ $Date$ | |
22 | */ | |
23 | 0 | public class Build extends BuildBase |
24 | implements java.io.Serializable | |
25 | { | |
26 | ||
27 | ||
28 | //--------------------------/ | |
29 | //- Class/Member Variables -/ | |
30 | //--------------------------/ | |
31 | ||
32 | /** | |
33 | * This element specifies a directory containing the source of | |
34 | * the project. The | |
35 | * generated build system will compile the source | |
36 | * in this directory when the project is | |
37 | * built. The path given is relative to the project | |
38 | * descriptor. | |
39 | */ | |
40 | private String sourceDirectory; | |
41 | ||
42 | /** | |
43 | * This element specifies a directory containing the script | |
44 | * sources of the | |
45 | * project. This directory is meant to be different | |
46 | * from the sourceDirectory, in that its | |
47 | * contents will be copied to the output directory | |
48 | * in most cases (since scripts are | |
49 | * interpreted rather than compiled). | |
50 | */ | |
51 | private String scriptSourceDirectory; | |
52 | ||
53 | /** | |
54 | * This element specifies a directory containing the unit test | |
55 | * source of the | |
56 | * project. The generated build system will compile | |
57 | * these directories when the project is | |
58 | * being tested. The path given is relative to the | |
59 | * project descriptor. | |
60 | */ | |
61 | private String testSourceDirectory; | |
62 | ||
63 | /** | |
64 | * The directory where compiled application classes are placed. | |
65 | */ | |
66 | private String outputDirectory; | |
67 | ||
68 | /** | |
69 | * The directory where compiled test classes are placed. | |
70 | */ | |
71 | private String testOutputDirectory; | |
72 | ||
73 | /** | |
74 | * Field extensions. | |
75 | */ | |
76 | private java.util.List extensions; | |
77 | ||
78 | ||
79 | //-----------/ | |
80 | //- Methods -/ | |
81 | //-----------/ | |
82 | ||
83 | /** | |
84 | * Method addExtension. | |
85 | * | |
86 | * @param extension | |
87 | */ | |
88 | public void addExtension( Extension extension ) | |
89 | { | |
90 | 0 | if ( !(extension instanceof Extension) ) |
91 | { | |
92 | 0 | throw new ClassCastException( "Build.addExtensions(extension) parameter must be instanceof " + Extension.class.getName() ); |
93 | } | |
94 | 0 | getExtensions().add( extension ); |
95 | 0 | } //-- void addExtension( Extension ) |
96 | ||
97 | /** | |
98 | * Method getExtensions. | |
99 | * | |
100 | * @return java.util.List | |
101 | */ | |
102 | public java.util.List getExtensions() | |
103 | { | |
104 | 0 | if ( this.extensions == null ) |
105 | { | |
106 | 0 | this.extensions = new java.util.ArrayList(); |
107 | } | |
108 | ||
109 | 0 | return this.extensions; |
110 | } //-- java.util.List getExtensions() | |
111 | ||
112 | /** | |
113 | * Get the directory where compiled application classes are | |
114 | * placed. | |
115 | * | |
116 | * @return String | |
117 | */ | |
118 | public String getOutputDirectory() | |
119 | { | |
120 | 0 | return this.outputDirectory; |
121 | } //-- String getOutputDirectory() | |
122 | ||
123 | /** | |
124 | * Get this element specifies a directory containing the script | |
125 | * sources of the | |
126 | * project. This directory is meant to be different | |
127 | * from the sourceDirectory, in that its | |
128 | * contents will be copied to the output directory | |
129 | * in most cases (since scripts are | |
130 | * interpreted rather than compiled). | |
131 | * | |
132 | * @return String | |
133 | */ | |
134 | public String getScriptSourceDirectory() | |
135 | { | |
136 | 0 | return this.scriptSourceDirectory; |
137 | } //-- String getScriptSourceDirectory() | |
138 | ||
139 | /** | |
140 | * Get this element specifies a directory containing the source | |
141 | * of the project. The | |
142 | * generated build system will compile the source | |
143 | * in this directory when the project is | |
144 | * built. The path given is relative to the project | |
145 | * descriptor. | |
146 | * | |
147 | * @return String | |
148 | */ | |
149 | public String getSourceDirectory() | |
150 | { | |
151 | 0 | return this.sourceDirectory; |
152 | } //-- String getSourceDirectory() | |
153 | ||
154 | /** | |
155 | * Get the directory where compiled test classes are placed. | |
156 | * | |
157 | * @return String | |
158 | */ | |
159 | public String getTestOutputDirectory() | |
160 | { | |
161 | 0 | return this.testOutputDirectory; |
162 | } //-- String getTestOutputDirectory() | |
163 | ||
164 | /** | |
165 | * Get this element specifies a directory containing the unit | |
166 | * test source of the | |
167 | * project. The generated build system will compile | |
168 | * these directories when the project is | |
169 | * being tested. The path given is relative to the | |
170 | * project descriptor. | |
171 | * | |
172 | * @return String | |
173 | */ | |
174 | public String getTestSourceDirectory() | |
175 | { | |
176 | 0 | return this.testSourceDirectory; |
177 | } //-- String getTestSourceDirectory() | |
178 | ||
179 | /** | |
180 | * Method removeExtension. | |
181 | * | |
182 | * @param extension | |
183 | */ | |
184 | public void removeExtension( Extension extension ) | |
185 | { | |
186 | 0 | if ( !(extension instanceof Extension) ) |
187 | { | |
188 | 0 | throw new ClassCastException( "Build.removeExtensions(extension) parameter must be instanceof " + Extension.class.getName() ); |
189 | } | |
190 | 0 | getExtensions().remove( extension ); |
191 | 0 | } //-- void removeExtension( Extension ) |
192 | ||
193 | /** | |
194 | * Set a set of build extensions to use from this project. | |
195 | * | |
196 | * @param extensions | |
197 | */ | |
198 | public void setExtensions( java.util.List extensions ) | |
199 | { | |
200 | 0 | this.extensions = extensions; |
201 | 0 | } //-- void setExtensions( java.util.List ) |
202 | ||
203 | /** | |
204 | * Set the directory where compiled application classes are | |
205 | * placed. | |
206 | * | |
207 | * @param outputDirectory | |
208 | */ | |
209 | public void setOutputDirectory( String outputDirectory ) | |
210 | { | |
211 | 0 | this.outputDirectory = outputDirectory; |
212 | 0 | } //-- void setOutputDirectory( String ) |
213 | ||
214 | /** | |
215 | * Set this element specifies a directory containing the script | |
216 | * sources of the | |
217 | * project. This directory is meant to be different | |
218 | * from the sourceDirectory, in that its | |
219 | * contents will be copied to the output directory | |
220 | * in most cases (since scripts are | |
221 | * interpreted rather than compiled). | |
222 | * | |
223 | * @param scriptSourceDirectory | |
224 | */ | |
225 | public void setScriptSourceDirectory( String scriptSourceDirectory ) | |
226 | { | |
227 | 0 | this.scriptSourceDirectory = scriptSourceDirectory; |
228 | 0 | } //-- void setScriptSourceDirectory( String ) |
229 | ||
230 | /** | |
231 | * Set this element specifies a directory containing the source | |
232 | * of the project. The | |
233 | * generated build system will compile the source | |
234 | * in this directory when the project is | |
235 | * built. The path given is relative to the project | |
236 | * descriptor. | |
237 | * | |
238 | * @param sourceDirectory | |
239 | */ | |
240 | public void setSourceDirectory( String sourceDirectory ) | |
241 | { | |
242 | 0 | this.sourceDirectory = sourceDirectory; |
243 | 0 | } //-- void setSourceDirectory( String ) |
244 | ||
245 | /** | |
246 | * Set the directory where compiled test classes are placed. | |
247 | * | |
248 | * @param testOutputDirectory | |
249 | */ | |
250 | public void setTestOutputDirectory( String testOutputDirectory ) | |
251 | { | |
252 | 0 | this.testOutputDirectory = testOutputDirectory; |
253 | 0 | } //-- void setTestOutputDirectory( String ) |
254 | ||
255 | /** | |
256 | * Set this element specifies a directory containing the unit | |
257 | * test source of the | |
258 | * project. The generated build system will compile | |
259 | * these directories when the project is | |
260 | * being tested. The path given is relative to the | |
261 | * project descriptor. | |
262 | * | |
263 | * @param testSourceDirectory | |
264 | */ | |
265 | public void setTestSourceDirectory( String testSourceDirectory ) | |
266 | { | |
267 | 0 | this.testSourceDirectory = testSourceDirectory; |
268 | 0 | } //-- void setTestSourceDirectory( String ) |
269 | ||
270 | ||
271 | 0 | private String modelEncoding = "UTF-8"; |
272 | ||
273 | /** | |
274 | * Set an encoding used for reading/writing the model. | |
275 | * | |
276 | * @param modelEncoding the encoding used when reading/writing the model. | |
277 | */ | |
278 | public void setModelEncoding( String modelEncoding ) | |
279 | { | |
280 | 0 | this.modelEncoding = modelEncoding; |
281 | 0 | } |
282 | ||
283 | /** | |
284 | * @return the current encoding used when reading/writing this model. | |
285 | */ | |
286 | public String getModelEncoding() | |
287 | { | |
288 | 0 | return modelEncoding; |
289 | } | |
290 | } |