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 * Contains the information needed for deploying websites.
010 * 
011 * @version $Revision$ $Date$
012 */
013@SuppressWarnings( "all" )
014public class Site
015    implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
016{
017
018      //--------------------------/
019     //- Class/Member Variables -/
020    //--------------------------/
021
022    /**
023     * 
024     *             
025     *             A unique identifier for a deployment location.
026     * This is used to match the
027     *             site to configuration in the
028     * <code>settings.xml</code> file, for example.
029     *             
030     *           
031     */
032    private String id;
033
034    /**
035     * Human readable name of the deployment location.
036     */
037    private String name;
038
039    /**
040     * 
041     *             
042     *             The url of the location where website is
043     * deployed, in the form <code>protocol://hostname/path</code>.
044     *             <br /><b>Default value is</b>: parent value [+
045     * path adjustment] + artifactId
046     *             
047     *           .
048     */
049    private String url;
050
051    /**
052     * Field locations.
053     */
054    private java.util.Map<Object, InputLocation> locations;
055
056
057      //-----------/
058     //- Methods -/
059    //-----------/
060
061    /**
062     * Method clone.
063     * 
064     * @return Site
065     */
066    public Site clone()
067    {
068        try
069        {
070            Site copy = (Site) super.clone();
071
072            if ( copy.locations != null )
073            {
074                copy.locations = new java.util.LinkedHashMap( copy.locations );
075            }
076
077            return copy;
078        }
079        catch ( java.lang.Exception ex )
080        {
081            throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
082                + " does not support clone()" ).initCause( ex );
083        }
084    } //-- Site clone()
085
086    /**
087     * Get a unique identifier for a deployment location. This is
088     * used to match the
089     *             site to configuration in the
090     * <code>settings.xml</code> file, for example.
091     * 
092     * @return String
093     */
094    public String getId()
095    {
096        return this.id;
097    } //-- String getId()
098
099    /**
100     * 
101     * 
102     * @param key
103     * @return InputLocation
104     */
105    public InputLocation getLocation( Object key )
106    {
107        return ( locations != null ) ? locations.get( key ) : null;
108    } //-- InputLocation getLocation( Object )
109
110    /**
111     * Get human readable name of the deployment location.
112     * 
113     * @return String
114     */
115    public String getName()
116    {
117        return this.name;
118    } //-- String getName()
119
120    /**
121     * Get the url of the location where website is deployed, in
122     * the form <code>protocol://hostname/path</code>.
123     *             <br /><b>Default value is</b>: parent value [+
124     * path adjustment] + artifactId.
125     * 
126     * @return String
127     */
128    public String getUrl()
129    {
130        return this.url;
131    } //-- String getUrl()
132
133    /**
134     * Set a unique identifier for a deployment location. This is
135     * used to match the
136     *             site to configuration in the
137     * <code>settings.xml</code> file, for example.
138     * 
139     * @param id
140     */
141    public void setId( String id )
142    {
143        this.id = id;
144    } //-- void setId( String )
145
146    /**
147     * 
148     * 
149     * @param key
150     * @param location
151     */
152    public void setLocation( Object key, InputLocation location )
153    {
154        if ( location != null )
155        {
156            if ( this.locations == null )
157            {
158                this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
159            }
160            this.locations.put( key, location );
161        }
162    } //-- void setLocation( Object, InputLocation )
163
164    /**
165     * Set human readable name of the deployment location.
166     * 
167     * @param name
168     */
169    public void setName( String name )
170    {
171        this.name = name;
172    } //-- void setName( String )
173
174    /**
175     * Set the url of the location where website is deployed, in
176     * the form <code>protocol://hostname/path</code>.
177     *             <br /><b>Default value is</b>: parent value [+
178     * path adjustment] + artifactId.
179     * 
180     * @param url
181     */
182    public void setUrl( String url )
183    {
184        this.url = url;
185    } //-- void setUrl( String )
186
187}