1 // =================== DO NOT EDIT THIS FILE ==================== 2 // Generated by Modello 1.9.1, 3 // any modifications will be overwritten. 4 // ============================================================== 5 6 package org.apache.maven.model; 7 8 /** 9 * 10 * 11 * The <code><scm></code> element contains 12 * informations required to the SCM 13 * (Source Control Management) of the project. 14 * 15 * 16 * 17 * @version $Revision$ $Date$ 18 */ 19 @SuppressWarnings( "all" ) 20 public class Scm 21 implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker 22 { 23 24 //--------------------------/ 25 //- Class/Member Variables -/ 26 //--------------------------/ 27 28 /** 29 * 30 * 31 * The source control management system URL 32 * that describes the repository and how to connect 33 * to the 34 * repository. For more information, see the 35 * <a 36 * href="https://maven.apache.org/scm/scm-url-format.html">URL 37 * format</a> 38 * and <a 39 * href="https://maven.apache.org/scm/scms-overview.html">list 40 * of supported SCMs</a>. 41 * This connection is read-only. 42 * <br><b>Default value is</b>: parent value [+ 43 * path adjustment] + (artifactId or 44 * <code>project.directory</code> property) 45 * 46 * . 47 */ 48 private String connection; 49 50 /** 51 * 52 * 53 * Just like <code>connection</code>, but for 54 * developers, i.e. this scm connection 55 * will not be read only. 56 * <br><b>Default value is</b>: parent value [+ 57 * path adjustment] + (artifactId or 58 * <code>project.directory</code> property) 59 * 60 * . 61 */ 62 private String developerConnection; 63 64 /** 65 * The tag of current code. By default, it's set to HEAD during 66 * development. 67 */ 68 private String tag = "HEAD"; 69 70 /** 71 * 72 * 73 * The URL to the project's browsable SCM 74 * repository, such as ViewVC or Fisheye. 75 * <br><b>Default value is</b>: parent value [+ 76 * path adjustment] + (artifactId or 77 * <code>project.directory</code> property), or just parent 78 * value if 79 * 80 * <code>child.urls.inherit.append.path="false"</code> 81 * 82 * 83 */ 84 private String url; 85 86 /** 87 * 88 * 89 * When childs inherit from urls, append path or 90 * not?. Note: While the type 91 * of this field is <code>String</code> for 92 * technical reasons, the semantic type is actually 93 * <code>Boolean</code> 94 * <br /><b>Default value is</b>: <code>true</code> 95 * 96 * 97 */ 98 private String childInheritAppendPath; 99 100 /** 101 * Field locations. 102 */ 103 private java.util.Map<Object, InputLocation> locations; 104 105 106 //-----------/ 107 //- Methods -/ 108 //-----------/ 109 110 /** 111 * Method clone. 112 * 113 * @return Scm 114 */ 115 public Scm clone() 116 { 117 try 118 { 119 Scm copy = (Scm) super.clone(); 120 121 if ( copy.locations != null ) 122 { 123 copy.locations = new java.util.LinkedHashMap( copy.locations ); 124 } 125 126 return copy; 127 } 128 catch ( java.lang.Exception ex ) 129 { 130 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName() 131 + " does not support clone()" ).initCause( ex ); 132 } 133 } //-- Scm clone() 134 135 /** 136 * Get when childs inherit from urls, append path or not?. 137 * Note: While the type 138 * of this field is <code>String</code> for 139 * technical reasons, the semantic type is actually 140 * <code>Boolean</code> 141 * <br /><b>Default value is</b>: <code>true</code> 142 * 143 * @return String 144 */ 145 public String getChildInheritAppendPath() 146 { 147 return this.childInheritAppendPath; 148 } //-- String getChildInheritAppendPath() 149 150 /** 151 * Get the source control management system URL 152 * that describes the repository and how to connect 153 * to the 154 * repository. For more information, see the 155 * <a 156 * href="https://maven.apache.org/scm/scm-url-format.html">URL 157 * format</a> 158 * and <a 159 * href="https://maven.apache.org/scm/scms-overview.html">list 160 * of supported SCMs</a>. 161 * This connection is read-only. 162 * <br><b>Default value is</b>: parent value [+ 163 * path adjustment] + (artifactId or 164 * <code>project.directory</code> property). 165 * 166 * @return String 167 */ 168 public String getConnection() 169 { 170 return this.connection; 171 } //-- String getConnection() 172 173 /** 174 * Get just like <code>connection</code>, but for developers, 175 * i.e. this scm connection 176 * will not be read only. 177 * <br><b>Default value is</b>: parent value [+ 178 * path adjustment] + (artifactId or 179 * <code>project.directory</code> property). 180 * 181 * @return String 182 */ 183 public String getDeveloperConnection() 184 { 185 return this.developerConnection; 186 } //-- String getDeveloperConnection() 187 188 /** 189 * 190 * 191 * @param key 192 * @return InputLocation 193 */ 194 public InputLocation getLocation( Object key ) 195 { 196 return ( locations != null ) ? locations.get( key ) : null; 197 } //-- InputLocation getLocation( Object ) 198 199 /** 200 * Get the tag of current code. By default, it's set to HEAD 201 * during development. 202 * 203 * @return String 204 */ 205 public String getTag() 206 { 207 return this.tag; 208 } //-- String getTag() 209 210 /** 211 * Get the URL to the project's browsable SCM repository, such 212 * as ViewVC or Fisheye. 213 * <br><b>Default value is</b>: parent value [+ 214 * path adjustment] + (artifactId or 215 * <code>project.directory</code> property), or just parent 216 * value if 217 * 218 * <code>child.urls.inherit.append.path="false"</code> 219 * 220 * @return String 221 */ 222 public String getUrl() 223 { 224 return this.url; 225 } //-- String getUrl() 226 227 /** 228 * Set when childs inherit from urls, append path or not?. 229 * Note: While the type 230 * of this field is <code>String</code> for 231 * technical reasons, the semantic type is actually 232 * <code>Boolean</code> 233 * <br /><b>Default value is</b>: <code>true</code> 234 * 235 * @param childInheritAppendPath 236 */ 237 public void setChildInheritAppendPath( String childInheritAppendPath ) 238 { 239 this.childInheritAppendPath = childInheritAppendPath; 240 } //-- void setChildInheritAppendPath( String ) 241 242 /** 243 * Set the source control management system URL 244 * that describes the repository and how to connect 245 * to the 246 * repository. For more information, see the 247 * <a 248 * href="https://maven.apache.org/scm/scm-url-format.html">URL 249 * format</a> 250 * and <a 251 * href="https://maven.apache.org/scm/scms-overview.html">list 252 * of supported SCMs</a>. 253 * This connection is read-only. 254 * <br><b>Default value is</b>: parent value [+ 255 * path adjustment] + (artifactId or 256 * <code>project.directory</code> property). 257 * 258 * @param connection 259 */ 260 public void setConnection( String connection ) 261 { 262 this.connection = connection; 263 } //-- void setConnection( String ) 264 265 /** 266 * Set just like <code>connection</code>, but for developers, 267 * i.e. this scm connection 268 * will not be read only. 269 * <br><b>Default value is</b>: parent value [+ 270 * path adjustment] + (artifactId or 271 * <code>project.directory</code> property). 272 * 273 * @param developerConnection 274 */ 275 public void setDeveloperConnection( String developerConnection ) 276 { 277 this.developerConnection = developerConnection; 278 } //-- void setDeveloperConnection( String ) 279 280 /** 281 * 282 * 283 * @param key 284 * @param location 285 */ 286 public void setLocation( Object key, InputLocation location ) 287 { 288 if ( location != null ) 289 { 290 if ( this.locations == null ) 291 { 292 this.locations = new java.util.LinkedHashMap<Object, InputLocation>(); 293 } 294 this.locations.put( key, location ); 295 } 296 } //-- void setLocation( Object, InputLocation ) 297 298 /** 299 * Set the tag of current code. By default, it's set to HEAD 300 * during development. 301 * 302 * @param tag 303 */ 304 public void setTag( String tag ) 305 { 306 this.tag = tag; 307 } //-- void setTag( String ) 308 309 /** 310 * Set the URL to the project's browsable SCM repository, such 311 * as ViewVC or Fisheye. 312 * <br><b>Default value is</b>: parent value [+ 313 * path adjustment] + (artifactId or 314 * <code>project.directory</code> property), or just parent 315 * value if 316 * 317 * <code>child.urls.inherit.append.path="false"</code> 318 * 319 * @param url 320 */ 321 public void setUrl( String url ) 322 { 323 this.url = url; 324 } //-- void setUrl( String ) 325 326 327 328 public boolean isChildInheritAppendPath() 329 { 330 return ( childInheritAppendPath != null ) ? Boolean.parseBoolean( childInheritAppendPath ) : true; 331 } 332 333 public void setChildInheritAppendPath( boolean childInheritAppendPath ) 334 { 335 this.childInheritAppendPath = String.valueOf( childInheritAppendPath ); 336 } 337 338 339 }