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 * 
010 *         
011 *         The <code>&lt;exclusion&gt;</code> element contains
012 * informations required to exclude
013 *         an artifact to the project.
014 *         
015 *       
016 * 
017 * @version $Revision$ $Date$
018 */
019@SuppressWarnings( "all" )
020public class Exclusion
021    implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
022{
023
024      //--------------------------/
025     //- Class/Member Variables -/
026    //--------------------------/
027
028    /**
029     * The artifact ID of the project to exclude.
030     */
031    private String artifactId;
032
033    /**
034     * The group ID of the project to exclude.
035     */
036    private String groupId;
037
038    /**
039     * Field locations.
040     */
041    private java.util.Map<Object, InputLocation> locations;
042
043
044      //-----------/
045     //- Methods -/
046    //-----------/
047
048    /**
049     * Method clone.
050     * 
051     * @return Exclusion
052     */
053    public Exclusion clone()
054    {
055        try
056        {
057            Exclusion copy = (Exclusion) super.clone();
058
059            if ( copy.locations != null )
060            {
061                copy.locations = new java.util.LinkedHashMap( copy.locations );
062            }
063
064            return copy;
065        }
066        catch ( java.lang.Exception ex )
067        {
068            throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
069                + " does not support clone()" ).initCause( ex );
070        }
071    } //-- Exclusion clone()
072
073    /**
074     * Get the artifact ID of the project to exclude.
075     * 
076     * @return String
077     */
078    public String getArtifactId()
079    {
080        return this.artifactId;
081    } //-- String getArtifactId()
082
083    /**
084     * Get the group ID of the project to exclude.
085     * 
086     * @return String
087     */
088    public String getGroupId()
089    {
090        return this.groupId;
091    } //-- String getGroupId()
092
093    /**
094     * 
095     * 
096     * @param key
097     * @return InputLocation
098     */
099    public InputLocation getLocation( Object key )
100    {
101        return ( locations != null ) ? locations.get( key ) : null;
102    } //-- InputLocation getLocation( Object )
103
104    /**
105     * Set the artifact ID of the project to exclude.
106     * 
107     * @param artifactId
108     */
109    public void setArtifactId( String artifactId )
110    {
111        this.artifactId = artifactId;
112    } //-- void setArtifactId( String )
113
114    /**
115     * Set the group ID of the project to exclude.
116     * 
117     * @param groupId
118     */
119    public void setGroupId( String groupId )
120    {
121        this.groupId = groupId;
122    } //-- void setGroupId( String )
123
124    /**
125     * 
126     * 
127     * @param key
128     * @param location
129     */
130    public void setLocation( Object key, InputLocation location )
131    {
132        if ( location != null )
133        {
134            if ( this.locations == null )
135            {
136                this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
137            }
138            this.locations.put( key, location );
139        }
140    } //-- void setLocation( Object, InputLocation )
141
142}