View Javadoc
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>&lt;scm&gt;</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 }