View Javadoc
1   /*
2    Licensed to the Apache Software Foundation (ASF) under one
3    or more contributor license agreements.  See the NOTICE file
4    distributed with this work for additional information
5    regarding copyright ownership.  The ASF licenses this file
6    to you under the Apache License, Version 2.0 (the
7    "License"); you may not use this file except in compliance
8    with the License.  You may obtain a copy of the License at
9    
10       http://www.apache.org/licenses/LICENSE-2.0
11   
12   Unless required by applicable law or agreed to in writing,
13   software distributed under the License is distributed on an
14   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   KIND, either express or implied.  See the License for the
16   specific language governing permissions and limitations
17   under the License.
18   =================== DO NOT EDIT THIS FILE ====================
19   Generated by Modello 2.4.0,
20   any modifications will be overwritten.
21   ==============================================================
22   */
23  
24  package org.apache.maven.model;
25  
26  /**
27   * Represents a set of reports and configuration to be used to
28   * generate them.
29   * 
30   * @version $Revision$ $Date$
31   */
32  @SuppressWarnings( "all" )
33  public class ReportSet
34      extends ConfigurationContainer
35      implements java.io.Serializable, java.lang.Cloneable
36  {
37  
38        //--------------------------/
39       //- Class/Member Variables -/
40      //--------------------------/
41  
42      /**
43       * The unique id for this report set, to be used during POM
44       * inheritance and profile injection
45       *             for merging of report sets.
46       *           
47       */
48      private String id = "default";
49  
50      /**
51       * Field reports.
52       */
53      private java.util.List<String> reports;
54  
55  
56        //-----------/
57       //- Methods -/
58      //-----------/
59  
60      /**
61       * Method addReport.
62       * 
63       * @param string a string object.
64       */
65      public void addReport( String string )
66      {
67          getReports().add( string );
68      } //-- void addReport( String )
69  
70      /**
71       * Method clone.
72       * 
73       * @return ReportSet
74       */
75      public ReportSet clone()
76      {
77          try
78          {
79              ReportSet copy = (ReportSet) super.clone();
80  
81              if ( this.reports != null )
82              {
83                  copy.reports = new java.util.ArrayList<String>();
84                  copy.reports.addAll( this.reports );
85              }
86  
87              return copy;
88          }
89          catch ( java.lang.Exception ex )
90          {
91              throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
92                  + " does not support clone()" ).initCause( ex );
93          }
94      } //-- ReportSet clone()
95  
96      /**
97       * Get the unique id for this report set, to be used during POM
98       * inheritance and profile injection
99       *             for merging of report sets.
100      * 
101      * @return String
102      */
103     public String getId()
104     {
105         return this.id;
106     } //-- String getId()
107 
108     /**
109      * Method getReports.
110      * 
111      * @return List
112      */
113     public java.util.List<String> getReports()
114     {
115         if ( this.reports == null )
116         {
117             this.reports = new java.util.ArrayList<String>();
118         }
119 
120         return this.reports;
121     } //-- java.util.List<String> getReports()
122 
123     /**
124      * Method removeReport.
125      * 
126      * @param string a string object.
127      */
128     public void removeReport( String string )
129     {
130         getReports().remove( string );
131     } //-- void removeReport( String )
132 
133     /**
134      * Set the unique id for this report set, to be used during POM
135      * inheritance and profile injection
136      *             for merging of report sets.
137      * 
138      * @param id a id object.
139      */
140     public void setId( String id )
141     {
142         this.id = id;
143     } //-- void setId( String )
144 
145     /**
146      * Set the list of reports from this plugin which should be
147      * generated from this set.
148      * 
149      * @param reports a reports object.
150      */
151     public void setReports( java.util.List<String> reports )
152     {
153         this.reports = reports;
154     } //-- void setReports( java.util.List )
155 
156     
157             
158     @Override
159     public String toString()
160     {
161         return getId();
162     }
163             
164           
165 }