View Javadoc

1   /*
2    =================== DO NOT EDIT THIS FILE ====================
3    Generated by Modello 1.4.1 on 2013-02-24 03:31:02,
4    any modifications will be overwritten.
5    ==============================================================
6    */
7   
8   package org.apache.maven.model;
9   
10  /**
11   * 
12   *         
13   *         Base class for the <code>Model</code> and the
14   * <code>Profile</code> objects.
15   *         
16   *       
17   * 
18   * @version $Revision$ $Date$
19   */
20  @SuppressWarnings( "all" )
21  public class ModelBase
22      implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
23  {
24  
25        //--------------------------/
26       //- Class/Member Variables -/
27      //--------------------------/
28  
29      /**
30       * Field modules.
31       */
32      private java.util.List<String> modules;
33  
34      /**
35       * Distribution information for a project that enables
36       * deployment of the site
37       *             and artifacts to remote web servers and
38       * repositories respectively.
39       */
40      private DistributionManagement distributionManagement;
41  
42      /**
43       * Field properties.
44       */
45      private java.util.Properties properties;
46  
47      /**
48       * Default dependency information for projects that inherit
49       * from this one. The
50       *             dependencies in this section are not immediately
51       * resolved. Instead, when a POM derived
52       *             from this one declares a dependency described by
53       * a matching groupId and artifactId, the
54       *             version and other values from this section are
55       * used for that dependency if they were not
56       *             already specified.
57       */
58      private DependencyManagement dependencyManagement;
59  
60      /**
61       * Field dependencies.
62       */
63      private java.util.List<Dependency> dependencies;
64  
65      /**
66       * Field repositories.
67       */
68      private java.util.List<Repository> repositories;
69  
70      /**
71       * Field pluginRepositories.
72       */
73      private java.util.List<Repository> pluginRepositories;
74  
75      /**
76       * 
77       *             
78       *             <b>Deprecated</b>. Now ignored by Maven.
79       *             
80       *           
81       */
82      private Object reports;
83  
84      /**
85       * 
86       *             
87       *             This element includes the specification of
88       * report plugins to use
89       *             to generate the reports on the Maven-generated
90       * site.
91       *             These reports will be run when a user executes
92       * <code>mvn site</code>.
93       *             All of the reports will be included in the
94       * navigation bar for browsing.
95       *             
96       *           
97       */
98      private Reporting reporting;
99  
100     /**
101      * Field locations.
102      */
103     private java.util.Map<Object, InputLocation> locations;
104 
105 
106       //-----------/
107      //- Methods -/
108     //-----------/
109 
110     /**
111      * Method addDependency.
112      * 
113      * @param dependency
114      */
115     public void addDependency( Dependency dependency )
116     {
117         getDependencies().add( dependency );
118     } //-- void addDependency( Dependency )
119 
120     /**
121      * Method addModule.
122      * 
123      * @param string
124      */
125     public void addModule( String string )
126     {
127         getModules().add( string );
128     } //-- void addModule( String )
129 
130     /**
131      * Method addPluginRepository.
132      * 
133      * @param repository
134      */
135     public void addPluginRepository( Repository repository )
136     {
137         getPluginRepositories().add( repository );
138     } //-- void addPluginRepository( Repository )
139 
140     /**
141      * Method addProperty.
142      * 
143      * @param key
144      * @param value
145      */
146     public void addProperty( String key, String value )
147     {
148         getProperties().put( key, value );
149     } //-- void addProperty( String, String )
150 
151     /**
152      * Method addRepository.
153      * 
154      * @param repository
155      */
156     public void addRepository( Repository repository )
157     {
158         getRepositories().add( repository );
159     } //-- void addRepository( Repository )
160 
161     /**
162      * Method clone.
163      * 
164      * @return ModelBase
165      */
166     public ModelBase clone()
167     {
168         try
169         {
170             ModelBase copy = (ModelBase) super.clone();
171 
172             if ( this.modules != null )
173             {
174                 copy.modules = new java.util.ArrayList<String>();
175                 copy.modules.addAll( this.modules );
176             }
177 
178             if ( this.distributionManagement != null )
179             {
180                 copy.distributionManagement = (DistributionManagement) this.distributionManagement.clone();
181             }
182 
183             if ( this.properties != null )
184             {
185                 copy.properties = (java.util.Properties) this.properties.clone();
186             }
187 
188             if ( this.dependencyManagement != null )
189             {
190                 copy.dependencyManagement = (DependencyManagement) this.dependencyManagement.clone();
191             }
192 
193             if ( this.dependencies != null )
194             {
195                 copy.dependencies = new java.util.ArrayList<Dependency>();
196                 for ( Dependency item : this.dependencies )
197                 {
198                     copy.dependencies.add( ( (Dependency) item).clone() );
199                 }
200             }
201 
202             if ( this.repositories != null )
203             {
204                 copy.repositories = new java.util.ArrayList<Repository>();
205                 for ( Repository item : this.repositories )
206                 {
207                     copy.repositories.add( ( (Repository) item).clone() );
208                 }
209             }
210 
211             if ( this.pluginRepositories != null )
212             {
213                 copy.pluginRepositories = new java.util.ArrayList<Repository>();
214                 for ( Repository item : this.pluginRepositories )
215                 {
216                     copy.pluginRepositories.add( ( (Repository) item).clone() );
217                 }
218             }
219 
220             if ( this.reports != null )
221             {
222                 copy.reports = new org.codehaus.plexus.util.xml.Xpp3Dom( (org.codehaus.plexus.util.xml.Xpp3Dom) this.reports );
223             }
224 
225             if ( this.reporting != null )
226             {
227                 copy.reporting = (Reporting) this.reporting.clone();
228             }
229 
230             if ( copy.locations != null )
231             {
232                 copy.locations = new java.util.LinkedHashMap( copy.locations );
233             }
234 
235             return copy;
236         }
237         catch ( java.lang.Exception ex )
238         {
239             throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
240                 + " does not support clone()" ).initCause( ex );
241         }
242     } //-- ModelBase clone()
243 
244     /**
245      * Method getDependencies.
246      * 
247      * @return List
248      */
249     public java.util.List<Dependency> getDependencies()
250     {
251         if ( this.dependencies == null )
252         {
253             this.dependencies = new java.util.ArrayList<Dependency>();
254         }
255 
256         return this.dependencies;
257     } //-- java.util.List<Dependency> getDependencies()
258 
259     /**
260      * Get default dependency information for projects that inherit
261      * from this one. The
262      *             dependencies in this section are not immediately
263      * resolved. Instead, when a POM derived
264      *             from this one declares a dependency described by
265      * a matching groupId and artifactId, the
266      *             version and other values from this section are
267      * used for that dependency if they were not
268      *             already specified.
269      * 
270      * @return DependencyManagement
271      */
272     public DependencyManagement getDependencyManagement()
273     {
274         return this.dependencyManagement;
275     } //-- DependencyManagement getDependencyManagement()
276 
277     /**
278      * Get distribution information for a project that enables
279      * deployment of the site
280      *             and artifacts to remote web servers and
281      * repositories respectively.
282      * 
283      * @return DistributionManagement
284      */
285     public DistributionManagement getDistributionManagement()
286     {
287         return this.distributionManagement;
288     } //-- DistributionManagement getDistributionManagement()
289 
290     /**
291      * 
292      * 
293      * @param key
294      * @return InputLocation
295      */
296     public InputLocation getLocation( Object key )
297     {
298         return ( locations != null ) ? locations.get( key ) : null;
299     } //-- InputLocation getLocation( Object )
300 
301     /**
302      * Method getModules.
303      * 
304      * @return List
305      */
306     public java.util.List<String> getModules()
307     {
308         if ( this.modules == null )
309         {
310             this.modules = new java.util.ArrayList<String>();
311         }
312 
313         return this.modules;
314     } //-- java.util.List<String> getModules()
315 
316     /**
317      * Method getPluginRepositories.
318      * 
319      * @return List
320      */
321     public java.util.List<Repository> getPluginRepositories()
322     {
323         if ( this.pluginRepositories == null )
324         {
325             this.pluginRepositories = new java.util.ArrayList<Repository>();
326         }
327 
328         return this.pluginRepositories;
329     } //-- java.util.List<Repository> getPluginRepositories()
330 
331     /**
332      * Method getProperties.
333      * 
334      * @return Properties
335      */
336     public java.util.Properties getProperties()
337     {
338         if ( this.properties == null )
339         {
340             this.properties = new java.util.Properties();
341         }
342 
343         return this.properties;
344     } //-- java.util.Properties getProperties()
345 
346     /**
347      * Get this element includes the specification of report
348      * plugins to use
349      *             to generate the reports on the Maven-generated
350      * site.
351      *             These reports will be run when a user executes
352      * <code>mvn site</code>.
353      *             All of the reports will be included in the
354      * navigation bar for browsing.
355      * 
356      * @return Reporting
357      */
358     public Reporting getReporting()
359     {
360         return this.reporting;
361     } //-- Reporting getReporting()
362 
363     /**
364      * Get <b>Deprecated</b>. Now ignored by Maven.
365      * 
366      * @return Object
367      */
368     public Object getReports()
369     {
370         return this.reports;
371     } //-- Object getReports()
372 
373     /**
374      * Method getRepositories.
375      * 
376      * @return List
377      */
378     public java.util.List<Repository> getRepositories()
379     {
380         if ( this.repositories == null )
381         {
382             this.repositories = new java.util.ArrayList<Repository>();
383         }
384 
385         return this.repositories;
386     } //-- java.util.List<Repository> getRepositories()
387 
388     /**
389      * Method removeDependency.
390      * 
391      * @param dependency
392      */
393     public void removeDependency( Dependency dependency )
394     {
395         getDependencies().remove( dependency );
396     } //-- void removeDependency( Dependency )
397 
398     /**
399      * Method removeModule.
400      * 
401      * @param string
402      */
403     public void removeModule( String string )
404     {
405         getModules().remove( string );
406     } //-- void removeModule( String )
407 
408     /**
409      * Method removePluginRepository.
410      * 
411      * @param repository
412      */
413     public void removePluginRepository( Repository repository )
414     {
415         getPluginRepositories().remove( repository );
416     } //-- void removePluginRepository( Repository )
417 
418     /**
419      * Method removeRepository.
420      * 
421      * @param repository
422      */
423     public void removeRepository( Repository repository )
424     {
425         getRepositories().remove( repository );
426     } //-- void removeRepository( Repository )
427 
428     /**
429      * Set this element describes all of the dependencies
430      * associated with a
431      *             project.
432      *             These dependencies are used to construct a
433      * classpath for your
434      *             project during the build process. They are
435      * automatically downloaded from the
436      *             repositories defined in this project.
437      *             See <a
438      * href="http://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html">the
439      *             dependency mechanism</a> for more information.
440      * 
441      * @param dependencies
442      */
443     public void setDependencies( java.util.List<Dependency> dependencies )
444     {
445         this.dependencies = dependencies;
446     } //-- void setDependencies( java.util.List )
447 
448     /**
449      * Set default dependency information for projects that inherit
450      * from this one. The
451      *             dependencies in this section are not immediately
452      * resolved. Instead, when a POM derived
453      *             from this one declares a dependency described by
454      * a matching groupId and artifactId, the
455      *             version and other values from this section are
456      * used for that dependency if they were not
457      *             already specified.
458      * 
459      * @param dependencyManagement
460      */
461     public void setDependencyManagement( DependencyManagement dependencyManagement )
462     {
463         this.dependencyManagement = dependencyManagement;
464     } //-- void setDependencyManagement( DependencyManagement )
465 
466     /**
467      * Set distribution information for a project that enables
468      * deployment of the site
469      *             and artifacts to remote web servers and
470      * repositories respectively.
471      * 
472      * @param distributionManagement
473      */
474     public void setDistributionManagement( DistributionManagement distributionManagement )
475     {
476         this.distributionManagement = distributionManagement;
477     } //-- void setDistributionManagement( DistributionManagement )
478 
479     /**
480      * 
481      * 
482      * @param key
483      * @param location
484      */
485     public void setLocation( Object key, InputLocation location )
486     {
487         if ( location != null )
488         {
489             if ( this.locations == null )
490             {
491                 this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
492             }
493             this.locations.put( key, location );
494         }
495     } //-- void setLocation( Object, InputLocation )
496 
497     /**
498      * Set the modules (sometimes called subprojects) to build as a
499      * part of this
500      *             project. Each module listed is a relative path
501      * to the directory containing the module.
502      * 
503      * @param modules
504      */
505     public void setModules( java.util.List<String> modules )
506     {
507         this.modules = modules;
508     } //-- void setModules( java.util.List )
509 
510     /**
511      * Set the lists of the remote repositories for discovering
512      * plugins for builds and
513      *             reports.
514      * 
515      * @param pluginRepositories
516      */
517     public void setPluginRepositories( java.util.List<Repository> pluginRepositories )
518     {
519         this.pluginRepositories = pluginRepositories;
520     } //-- void setPluginRepositories( java.util.List )
521 
522     /**
523      * Set properties that can be used throughout the POM as a
524      * substitution, and
525      *             are used as filters in resources if enabled.
526      *             The format is
527      * <code>&lt;name&gt;value&lt;/name&gt;</code>.
528      * 
529      * @param properties
530      */
531     public void setProperties( java.util.Properties properties )
532     {
533         this.properties = properties;
534     } //-- void setProperties( java.util.Properties )
535 
536     /**
537      * Set this element includes the specification of report
538      * plugins to use
539      *             to generate the reports on the Maven-generated
540      * site.
541      *             These reports will be run when a user executes
542      * <code>mvn site</code>.
543      *             All of the reports will be included in the
544      * navigation bar for browsing.
545      * 
546      * @param reporting
547      */
548     public void setReporting( Reporting reporting )
549     {
550         this.reporting = reporting;
551     } //-- void setReporting( Reporting )
552 
553     /**
554      * Set <b>Deprecated</b>. Now ignored by Maven.
555      * 
556      * @param reports
557      */
558     public void setReports( Object reports )
559     {
560         this.reports = reports;
561     } //-- void setReports( Object )
562 
563     /**
564      * Set the lists of the remote repositories for discovering
565      * dependencies and
566      *             extensions.
567      * 
568      * @param repositories
569      */
570     public void setRepositories( java.util.List<Repository> repositories )
571     {
572         this.repositories = repositories;
573     } //-- void setRepositories( java.util.List )
574 
575 }