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 * This element describes all of the mailing lists associated with
010 * a project. The
011 *         auto-generated site references this information.
012 * 
013 * @version $Revision$ $Date$
014 */
015@SuppressWarnings( "all" )
016public class MailingList
017    implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
018{
019
020      //--------------------------/
021     //- Class/Member Variables -/
022    //--------------------------/
023
024    /**
025     * 
026     *             
027     *             The name of the mailing list.
028     *             
029     *           
030     */
031    private String name;
032
033    /**
034     * 
035     *             
036     *             The email address or link that can be used to
037     * subscribe to
038     *             the mailing list.  If this is an email address,
039     * a
040     *             <code>mailto:</code> link will automatically be
041     * created
042     *             when the documentation is created.
043     *             
044     *           
045     */
046    private String subscribe;
047
048    /**
049     * 
050     *             
051     *             The email address or link that can be used to
052     * unsubscribe to
053     *             the mailing list.  If this is an email address,
054     * a
055     *             <code>mailto:</code> link will automatically be
056     * created
057     *             when the documentation is created.
058     *             
059     *           
060     */
061    private String unsubscribe;
062
063    /**
064     * 
065     *             
066     *             The email address or link that can be used to
067     * post to
068     *             the mailing list.  If this is an email address,
069     * a
070     *             <code>mailto:</code> link will automatically be
071     * created
072     *             when the documentation is created.
073     *             
074     *           
075     */
076    private String post;
077
078    /**
079     * The link to a URL where you can browse the mailing list
080     * archive.
081     */
082    private String archive;
083
084    /**
085     * Field otherArchives.
086     */
087    private java.util.List<String> otherArchives;
088
089    /**
090     * Field locations.
091     */
092    private java.util.Map<Object, InputLocation> locations;
093
094
095      //-----------/
096     //- Methods -/
097    //-----------/
098
099    /**
100     * Method addOtherArchive.
101     * 
102     * @param string
103     */
104    public void addOtherArchive( String string )
105    {
106        getOtherArchives().add( string );
107    } //-- void addOtherArchive( String )
108
109    /**
110     * Method clone.
111     * 
112     * @return MailingList
113     */
114    public MailingList clone()
115    {
116        try
117        {
118            MailingList copy = (MailingList) super.clone();
119
120            if ( this.otherArchives != null )
121            {
122                copy.otherArchives = new java.util.ArrayList<String>();
123                copy.otherArchives.addAll( this.otherArchives );
124            }
125
126            if ( copy.locations != null )
127            {
128                copy.locations = new java.util.LinkedHashMap( copy.locations );
129            }
130
131            return copy;
132        }
133        catch ( java.lang.Exception ex )
134        {
135            throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
136                + " does not support clone()" ).initCause( ex );
137        }
138    } //-- MailingList clone()
139
140    /**
141     * Get the link to a URL where you can browse the mailing list
142     * archive.
143     * 
144     * @return String
145     */
146    public String getArchive()
147    {
148        return this.archive;
149    } //-- String getArchive()
150
151    /**
152     * 
153     * 
154     * @param key
155     * @return InputLocation
156     */
157    public InputLocation getLocation( Object key )
158    {
159        return ( locations != null ) ? locations.get( key ) : null;
160    } //-- InputLocation getLocation( Object )
161
162    /**
163     * Get the name of the mailing list.
164     * 
165     * @return String
166     */
167    public String getName()
168    {
169        return this.name;
170    } //-- String getName()
171
172    /**
173     * Method getOtherArchives.
174     * 
175     * @return List
176     */
177    public java.util.List<String> getOtherArchives()
178    {
179        if ( this.otherArchives == null )
180        {
181            this.otherArchives = new java.util.ArrayList<String>();
182        }
183
184        return this.otherArchives;
185    } //-- java.util.List<String> getOtherArchives()
186
187    /**
188     * Get the email address or link that can be used to post to
189     *             the mailing list.  If this is an email address,
190     * a
191     *             <code>mailto:</code> link will automatically be
192     * created
193     *             when the documentation is created.
194     * 
195     * @return String
196     */
197    public String getPost()
198    {
199        return this.post;
200    } //-- String getPost()
201
202    /**
203     * Get the email address or link that can be used to subscribe
204     * to
205     *             the mailing list.  If this is an email address,
206     * a
207     *             <code>mailto:</code> link will automatically be
208     * created
209     *             when the documentation is created.
210     * 
211     * @return String
212     */
213    public String getSubscribe()
214    {
215        return this.subscribe;
216    } //-- String getSubscribe()
217
218    /**
219     * Get the email address or link that can be used to
220     * unsubscribe to
221     *             the mailing list.  If this is an email address,
222     * a
223     *             <code>mailto:</code> link will automatically be
224     * created
225     *             when the documentation is created.
226     * 
227     * @return String
228     */
229    public String getUnsubscribe()
230    {
231        return this.unsubscribe;
232    } //-- String getUnsubscribe()
233
234    /**
235     * Method removeOtherArchive.
236     * 
237     * @param string
238     */
239    public void removeOtherArchive( String string )
240    {
241        getOtherArchives().remove( string );
242    } //-- void removeOtherArchive( String )
243
244    /**
245     * Set the link to a URL where you can browse the mailing list
246     * archive.
247     * 
248     * @param archive
249     */
250    public void setArchive( String archive )
251    {
252        this.archive = archive;
253    } //-- void setArchive( String )
254
255    /**
256     * 
257     * 
258     * @param key
259     * @param location
260     */
261    public void setLocation( Object key, InputLocation location )
262    {
263        if ( location != null )
264        {
265            if ( this.locations == null )
266            {
267                this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
268            }
269            this.locations.put( key, location );
270        }
271    } //-- void setLocation( Object, InputLocation )
272
273    /**
274     * Set the name of the mailing list.
275     * 
276     * @param name
277     */
278    public void setName( String name )
279    {
280        this.name = name;
281    } //-- void setName( String )
282
283    /**
284     * Set the link to alternate URLs where you can browse the list
285     * archive.
286     * 
287     * @param otherArchives
288     */
289    public void setOtherArchives( java.util.List<String> otherArchives )
290    {
291        this.otherArchives = otherArchives;
292    } //-- void setOtherArchives( java.util.List )
293
294    /**
295     * Set the email address or link that can be used to post to
296     *             the mailing list.  If this is an email address,
297     * a
298     *             <code>mailto:</code> link will automatically be
299     * created
300     *             when the documentation is created.
301     * 
302     * @param post
303     */
304    public void setPost( String post )
305    {
306        this.post = post;
307    } //-- void setPost( String )
308
309    /**
310     * Set the email address or link that can be used to subscribe
311     * to
312     *             the mailing list.  If this is an email address,
313     * a
314     *             <code>mailto:</code> link will automatically be
315     * created
316     *             when the documentation is created.
317     * 
318     * @param subscribe
319     */
320    public void setSubscribe( String subscribe )
321    {
322        this.subscribe = subscribe;
323    } //-- void setSubscribe( String )
324
325    /**
326     * Set the email address or link that can be used to
327     * unsubscribe to
328     *             the mailing list.  If this is an email address,
329     * a
330     *             <code>mailto:</code> link will automatically be
331     * created
332     *             when the documentation is created.
333     * 
334     * @param unsubscribe
335     */
336    public void setUnsubscribe( String unsubscribe )
337    {
338        this.unsubscribe = unsubscribe;
339    } //-- void setUnsubscribe( String )
340
341}