001 /* 002 =================== DO NOT EDIT THIS FILE ==================== 003 Generated by Modello 1.4.1 on 2012-01-20 18:09:18, 004 any modifications will be overwritten. 005 ============================================================== 006 */ 007 008 package org.apache.maven.model; 009 010 /** 011 * 012 * 013 * The <code><build></code> element contains 014 * informations required to build the project. 015 * 016 * 017 * 018 * @version $Revision$ $Date$ 019 */ 020 @SuppressWarnings( "all" ) 021 public class Build 022 extends BuildBase 023 implements java.io.Serializable, java.lang.Cloneable 024 { 025 026 //--------------------------/ 027 //- Class/Member Variables -/ 028 //--------------------------/ 029 030 /** 031 * This element specifies a directory containing the source of 032 * the project. The 033 * generated build system will compile the source 034 * in this directory when the project is 035 * built. The path given is relative to the project 036 * descriptor. 037 */ 038 private String sourceDirectory; 039 040 /** 041 * This element specifies a directory containing the script 042 * sources of the 043 * project. This directory is meant to be different 044 * from the sourceDirectory, in that its 045 * contents will be copied to the output directory 046 * in most cases (since scripts are 047 * interpreted rather than compiled). 048 */ 049 private String scriptSourceDirectory; 050 051 /** 052 * This element specifies a directory containing the unit test 053 * source of the 054 * project. The generated build system will compile 055 * these directories when the project is 056 * being tested. The path given is relative to the 057 * project descriptor. 058 */ 059 private String testSourceDirectory; 060 061 /** 062 * The directory where compiled application classes are placed. 063 */ 064 private String outputDirectory; 065 066 /** 067 * The directory where compiled test classes are placed. 068 */ 069 private String testOutputDirectory; 070 071 /** 072 * Field extensions. 073 */ 074 private java.util.List<Extension> extensions; 075 076 077 //-----------/ 078 //- Methods -/ 079 //-----------/ 080 081 /** 082 * Method addExtension. 083 * 084 * @param extension 085 */ 086 public void addExtension( Extension extension ) 087 { 088 getExtensions().add( extension ); 089 } //-- void addExtension( Extension ) 090 091 /** 092 * Method clone. 093 * 094 * @return Build 095 */ 096 public Build clone() 097 { 098 try 099 { 100 Build copy = (Build) super.clone(); 101 102 if ( this.extensions != null ) 103 { 104 copy.extensions = new java.util.ArrayList<Extension>(); 105 for ( Extension item : this.extensions ) 106 { 107 copy.extensions.add( ( (Extension) item).clone() ); 108 } 109 } 110 111 return copy; 112 } 113 catch ( java.lang.Exception ex ) 114 { 115 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName() 116 + " does not support clone()" ).initCause( ex ); 117 } 118 } //-- Build clone() 119 120 /** 121 * Method getExtensions. 122 * 123 * @return List 124 */ 125 public java.util.List<Extension> getExtensions() 126 { 127 if ( this.extensions == null ) 128 { 129 this.extensions = new java.util.ArrayList<Extension>(); 130 } 131 132 return this.extensions; 133 } //-- java.util.List<Extension> getExtensions() 134 135 /** 136 * Get the directory where compiled application classes are 137 * placed. 138 * 139 * @return String 140 */ 141 public String getOutputDirectory() 142 { 143 return this.outputDirectory; 144 } //-- String getOutputDirectory() 145 146 /** 147 * Get this element specifies a directory containing the script 148 * sources of the 149 * project. This directory is meant to be different 150 * from the sourceDirectory, in that its 151 * contents will be copied to the output directory 152 * in most cases (since scripts are 153 * interpreted rather than compiled). 154 * 155 * @return String 156 */ 157 public String getScriptSourceDirectory() 158 { 159 return this.scriptSourceDirectory; 160 } //-- String getScriptSourceDirectory() 161 162 /** 163 * Get this element specifies a directory containing the source 164 * of the project. The 165 * generated build system will compile the source 166 * in this directory when the project is 167 * built. The path given is relative to the project 168 * descriptor. 169 * 170 * @return String 171 */ 172 public String getSourceDirectory() 173 { 174 return this.sourceDirectory; 175 } //-- String getSourceDirectory() 176 177 /** 178 * Get the directory where compiled test classes are placed. 179 * 180 * @return String 181 */ 182 public String getTestOutputDirectory() 183 { 184 return this.testOutputDirectory; 185 } //-- String getTestOutputDirectory() 186 187 /** 188 * Get this element specifies a directory containing the unit 189 * test source of the 190 * project. The generated build system will compile 191 * these directories when the project is 192 * being tested. The path given is relative to the 193 * project descriptor. 194 * 195 * @return String 196 */ 197 public String getTestSourceDirectory() 198 { 199 return this.testSourceDirectory; 200 } //-- String getTestSourceDirectory() 201 202 /** 203 * Method removeExtension. 204 * 205 * @param extension 206 */ 207 public void removeExtension( Extension extension ) 208 { 209 getExtensions().remove( extension ); 210 } //-- void removeExtension( Extension ) 211 212 /** 213 * Set a set of build extensions to use from this project. 214 * 215 * @param extensions 216 */ 217 public void setExtensions( java.util.List<Extension> extensions ) 218 { 219 this.extensions = extensions; 220 } //-- void setExtensions( java.util.List ) 221 222 /** 223 * Set the directory where compiled application classes are 224 * placed. 225 * 226 * @param outputDirectory 227 */ 228 public void setOutputDirectory( String outputDirectory ) 229 { 230 this.outputDirectory = outputDirectory; 231 } //-- void setOutputDirectory( String ) 232 233 /** 234 * Set this element specifies a directory containing the script 235 * sources of the 236 * project. This directory is meant to be different 237 * from the sourceDirectory, in that its 238 * contents will be copied to the output directory 239 * in most cases (since scripts are 240 * interpreted rather than compiled). 241 * 242 * @param scriptSourceDirectory 243 */ 244 public void setScriptSourceDirectory( String scriptSourceDirectory ) 245 { 246 this.scriptSourceDirectory = scriptSourceDirectory; 247 } //-- void setScriptSourceDirectory( String ) 248 249 /** 250 * Set this element specifies a directory containing the source 251 * of the project. The 252 * generated build system will compile the source 253 * in this directory when the project is 254 * built. The path given is relative to the project 255 * descriptor. 256 * 257 * @param sourceDirectory 258 */ 259 public void setSourceDirectory( String sourceDirectory ) 260 { 261 this.sourceDirectory = sourceDirectory; 262 } //-- void setSourceDirectory( String ) 263 264 /** 265 * Set the directory where compiled test classes are placed. 266 * 267 * @param testOutputDirectory 268 */ 269 public void setTestOutputDirectory( String testOutputDirectory ) 270 { 271 this.testOutputDirectory = testOutputDirectory; 272 } //-- void setTestOutputDirectory( String ) 273 274 /** 275 * Set this element specifies a directory containing the unit 276 * test source of the 277 * project. The generated build system will compile 278 * these directories when the project is 279 * being tested. The path given is relative to the 280 * project descriptor. 281 * 282 * @param testSourceDirectory 283 */ 284 public void setTestSourceDirectory( String testSourceDirectory ) 285 { 286 this.testSourceDirectory = testSourceDirectory; 287 } //-- void setTestSourceDirectory( String ) 288 289 }