001// =================== DO NOT EDIT THIS FILE ====================
002// Generated by Modello 1.8.1,
003// any modifications will be overwritten.
004// ==============================================================
005
006package org.apache.maven.model;
007
008/**
009 * Represents a set of reports and configuration to be used to
010 * generate them.
011 * 
012 * @version $Revision$ $Date$
013 */
014@SuppressWarnings( "all" )
015public class ReportSet
016    extends ConfigurationContainer
017    implements java.io.Serializable, java.lang.Cloneable
018{
019
020      //--------------------------/
021     //- Class/Member Variables -/
022    //--------------------------/
023
024    /**
025     * The unique id for this report set, to be used during POM
026     * inheritance and profile injection
027     *             for merging of report sets.
028     *           
029     */
030    private String id = "default";
031
032    /**
033     * Field reports.
034     */
035    private java.util.List<String> reports;
036
037
038      //-----------/
039     //- Methods -/
040    //-----------/
041
042    /**
043     * Method addReport.
044     * 
045     * @param string
046     */
047    public void addReport( String string )
048    {
049        getReports().add( string );
050    } //-- void addReport( String )
051
052    /**
053     * Method clone.
054     * 
055     * @return ReportSet
056     */
057    public ReportSet clone()
058    {
059        try
060        {
061            ReportSet copy = (ReportSet) super.clone();
062
063            if ( this.reports != null )
064            {
065                copy.reports = new java.util.ArrayList<String>();
066                copy.reports.addAll( this.reports );
067            }
068
069            return copy;
070        }
071        catch ( java.lang.Exception ex )
072        {
073            throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
074                + " does not support clone()" ).initCause( ex );
075        }
076    } //-- ReportSet clone()
077
078    /**
079     * Get the unique id for this report set, to be used during POM
080     * inheritance and profile injection
081     *             for merging of report sets.
082     * 
083     * @return String
084     */
085    public String getId()
086    {
087        return this.id;
088    } //-- String getId()
089
090    /**
091     * Method getReports.
092     * 
093     * @return List
094     */
095    public java.util.List<String> getReports()
096    {
097        if ( this.reports == null )
098        {
099            this.reports = new java.util.ArrayList<String>();
100        }
101
102        return this.reports;
103    } //-- java.util.List<String> getReports()
104
105    /**
106     * Method removeReport.
107     * 
108     * @param string
109     */
110    public void removeReport( String string )
111    {
112        getReports().remove( string );
113    } //-- void removeReport( String )
114
115    /**
116     * Set the unique id for this report set, to be used during POM
117     * inheritance and profile injection
118     *             for merging of report sets.
119     * 
120     * @param id
121     */
122    public void setId( String id )
123    {
124        this.id = id;
125    } //-- void setId( String )
126
127    /**
128     * Set the list of reports from this plugin which should be
129     * generated from this set.
130     * 
131     * @param reports
132     */
133    public void setReports( java.util.List<String> reports )
134    {
135        this.reports = reports;
136    } //-- void setReports( java.util.List )
137
138    
139            
140    @Override
141    public String toString()
142    {
143        return getId();
144    }
145            
146          
147}