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 * Modifications to the build process which is activated based on
010 * environmental
011 * parameters or command line arguments.
012 *
013 * @version $Revision$ $Date$
014 */
015 @SuppressWarnings( "all" )
016 public class Profile
017 extends ModelBase
018 implements java.io.Serializable, java.lang.Cloneable
019 {
020
021 //--------------------------/
022 //- Class/Member Variables -/
023 //--------------------------/
024
025 /**
026 * The identifier of this build profile. This is used for
027 * command line
028 * activation, and identifies profiles to be
029 * merged.
030 *
031 */
032 private String id = "default";
033
034 /**
035 * The conditional logic which will automatically trigger the
036 * inclusion of this
037 * profile.
038 */
039 private Activation activation;
040
041 /**
042 * Information required to build the project.
043 */
044 private BuildBase build;
045
046
047 //-----------/
048 //- Methods -/
049 //-----------/
050
051 /**
052 * Method clone.
053 *
054 * @return Profile
055 */
056 public Profile clone()
057 {
058 try
059 {
060 Profile copy = (Profile) super.clone();
061
062 if ( this.activation != null )
063 {
064 copy.activation = (Activation) this.activation.clone();
065 }
066
067 if ( this.build != null )
068 {
069 copy.build = (BuildBase) this.build.clone();
070 }
071
072 return copy;
073 }
074 catch ( java.lang.Exception ex )
075 {
076 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
077 + " does not support clone()" ).initCause( ex );
078 }
079 } //-- Profile clone()
080
081 /**
082 * Get the conditional logic which will automatically trigger
083 * the inclusion of this
084 * profile.
085 *
086 * @return Activation
087 */
088 public Activation getActivation()
089 {
090 return this.activation;
091 } //-- Activation getActivation()
092
093 /**
094 * Get information required to build the project.
095 *
096 * @return BuildBase
097 */
098 public BuildBase getBuild()
099 {
100 return this.build;
101 } //-- BuildBase getBuild()
102
103 /**
104 * Get the identifier of this build profile. This is used for
105 * command line
106 * activation, and identifies profiles to be
107 * merged.
108 *
109 * @return String
110 */
111 public String getId()
112 {
113 return this.id;
114 } //-- String getId()
115
116 /**
117 * Set the conditional logic which will automatically trigger
118 * the inclusion of this
119 * profile.
120 *
121 * @param activation
122 */
123 public void setActivation( Activation activation )
124 {
125 this.activation = activation;
126 } //-- void setActivation( Activation )
127
128 /**
129 * Set information required to build the project.
130 *
131 * @param build
132 */
133 public void setBuild( BuildBase build )
134 {
135 this.build = build;
136 } //-- void setBuild( BuildBase )
137
138 /**
139 * Set the identifier of this build profile. This is used for
140 * command line
141 * activation, and identifies profiles to be
142 * merged.
143 *
144 * @param id
145 */
146 public void setId( String id )
147 {
148 this.id = id;
149 } //-- void setId( String )
150
151
152
153 public static final String SOURCE_POM = "pom";
154
155 public static final String SOURCE_SETTINGS = "settings.xml";
156
157 // We don't want this to be parseable...it's sort of 'hidden'
158 // default source for this profile is in the pom itself.
159 private String source = SOURCE_POM;
160
161 public void setSource( String source )
162 {
163 this.source = source;
164 }
165
166 public String getSource()
167 {
168 return source;
169 }
170
171 /**
172 * @see java.lang.Object#toString()
173 */
174 public String toString()
175 {
176 return "Profile {id: " + getId() + ", source: " + getSource() + "}";
177 }
178
179
180 }