001    package org.apache.archiva.metadata.model;
002    
003    import javax.xml.bind.annotation.XmlRootElement;
004    import java.io.Serializable;
005    import java.util.List;
006    
007    /*
008     * Licensed to the Apache Software Foundation (ASF) under one
009     * or more contributor license agreements.  See the NOTICE file
010     * distributed with this work for additional information
011     * regarding copyright ownership.  The ASF licenses this file
012     * to you under the Apache License, Version 2.0 (the
013     * "License"); you may not use this file except in compliance
014     * with the License.  You may obtain a copy of the License at
015     *
016     *   http://www.apache.org/licenses/LICENSE-2.0
017     *
018     * Unless required by applicable law or agreed to in writing,
019     * software distributed under the License is distributed on an
020     * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
021     * KIND, either express or implied.  See the License for the
022     * specific language governing permissions and limitations
023     * under the License.
024     */
025    
026    /**
027     * Information about the available mailing lists for communicating with the project.
028     *
029     * @todo considering moving this to a facet - avoid referring to it externally
030     */
031    @XmlRootElement(name = "mailingList")
032    public class MailingList
033        implements Serializable
034    {
035        /**
036         * The primary archive URL for this mailing list.
037         */
038        private String mainArchiveUrl;
039    
040        /**
041         * A list of other URLs to archives of the mailing list.
042         */
043        private List<String> otherArchives;
044    
045        /**
046         * The name of the mailing list, eg. <i>Archiva Developers List</i>.
047         */
048        private String name;
049    
050        /**
051         * The email address to post a new message to the mailing list, if applicable.
052         */
053        private String postAddress;
054    
055        /**
056         * The email address to send a message to to subscribe to the mailing list, if applicable.
057         */
058        private String subscribeAddress;
059    
060        /**
061         * The email address to send a message to to unsubscribe from the mailing list, if applicable.
062         */
063        private String unsubscribeAddress;
064    
065        public void setMainArchiveUrl( String mainArchiveUrl )
066        {
067            this.mainArchiveUrl = mainArchiveUrl;
068        }
069    
070        public String getMainArchiveUrl()
071        {
072            return mainArchiveUrl;
073        }
074    
075        public void setOtherArchives( List<String> otherArchives )
076        {
077            this.otherArchives = otherArchives;
078        }
079    
080        public List<String> getOtherArchives()
081        {
082            return otherArchives;
083        }
084    
085        public void setName( String name )
086        {
087            this.name = name;
088        }
089    
090        public void setPostAddress( String postAddress )
091        {
092            this.postAddress = postAddress;
093        }
094    
095        public void setSubscribeAddress( String subscribeAddress )
096        {
097            this.subscribeAddress = subscribeAddress;
098        }
099    
100        public void setUnsubscribeAddress( String unsubscribeAddress )
101        {
102            this.unsubscribeAddress = unsubscribeAddress;
103        }
104    
105        public String getSubscribeAddress()
106        {
107            return subscribeAddress;
108        }
109    
110        public String getUnsubscribeAddress()
111        {
112            return unsubscribeAddress;
113        }
114    
115        public String getPostAddress()
116        {
117            return postAddress;
118        }
119    
120        public String getName()
121        {
122            return name;
123        }
124    }