001    // =================== DO NOT EDIT THIS FILE ====================
002    // Generated by Modello 1.7,
003    // any modifications will be overwritten.
004    // ==============================================================
005    
006    package 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" )
016    public 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    }