001 /*
002 =================== DO NOT EDIT THIS FILE ====================
003 Generated by Modello 1.4.1 on 2013-02-24 03:32:14,
004 any modifications will be overwritten.
005 ==============================================================
006 */
007
008 package org.apache.maven.model;
009
010 /**
011 *
012 *
013 * The <code><CiManagement></code> element contains
014 * informations required to the
015 * continuous integration system of the project.
016 *
017 *
018 *
019 * @version $Revision$ $Date$
020 */
021 @SuppressWarnings( "all" )
022 public class CiManagement
023 implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
024 {
025
026 //--------------------------/
027 //- Class/Member Variables -/
028 //--------------------------/
029
030 /**
031 *
032 *
033 * The name of the continuous integration system,
034 * e.g. <code>continuum</code>.
035 *
036 *
037 */
038 private String system;
039
040 /**
041 * URL for the continuous integration system used by the
042 * project if it has a web
043 * interface.
044 */
045 private String url;
046
047 /**
048 * Field notifiers.
049 */
050 private java.util.List<Notifier> notifiers;
051
052 /**
053 * Field locations.
054 */
055 private java.util.Map<Object, InputLocation> locations;
056
057
058 //-----------/
059 //- Methods -/
060 //-----------/
061
062 /**
063 * Method addNotifier.
064 *
065 * @param notifier
066 */
067 public void addNotifier( Notifier notifier )
068 {
069 getNotifiers().add( notifier );
070 } //-- void addNotifier( Notifier )
071
072 /**
073 * Method clone.
074 *
075 * @return CiManagement
076 */
077 public CiManagement clone()
078 {
079 try
080 {
081 CiManagement copy = (CiManagement) super.clone();
082
083 if ( this.notifiers != null )
084 {
085 copy.notifiers = new java.util.ArrayList<Notifier>();
086 for ( Notifier item : this.notifiers )
087 {
088 copy.notifiers.add( ( (Notifier) item).clone() );
089 }
090 }
091
092 if ( copy.locations != null )
093 {
094 copy.locations = new java.util.LinkedHashMap( copy.locations );
095 }
096
097 return copy;
098 }
099 catch ( java.lang.Exception ex )
100 {
101 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
102 + " does not support clone()" ).initCause( ex );
103 }
104 } //-- CiManagement clone()
105
106 /**
107 *
108 *
109 * @param key
110 * @return InputLocation
111 */
112 public InputLocation getLocation( Object key )
113 {
114 return ( locations != null ) ? locations.get( key ) : null;
115 } //-- InputLocation getLocation( Object )
116
117 /**
118 * Method getNotifiers.
119 *
120 * @return List
121 */
122 public java.util.List<Notifier> getNotifiers()
123 {
124 if ( this.notifiers == null )
125 {
126 this.notifiers = new java.util.ArrayList<Notifier>();
127 }
128
129 return this.notifiers;
130 } //-- java.util.List<Notifier> getNotifiers()
131
132 /**
133 * Get the name of the continuous integration system, e.g.
134 * <code>continuum</code>.
135 *
136 * @return String
137 */
138 public String getSystem()
139 {
140 return this.system;
141 } //-- String getSystem()
142
143 /**
144 * Get uRL for the continuous integration system used by the
145 * project if it has a web
146 * interface.
147 *
148 * @return String
149 */
150 public String getUrl()
151 {
152 return this.url;
153 } //-- String getUrl()
154
155 /**
156 * Method removeNotifier.
157 *
158 * @param notifier
159 */
160 public void removeNotifier( Notifier notifier )
161 {
162 getNotifiers().remove( notifier );
163 } //-- void removeNotifier( Notifier )
164
165 /**
166 *
167 *
168 * @param key
169 * @param location
170 */
171 public void setLocation( Object key, InputLocation location )
172 {
173 if ( location != null )
174 {
175 if ( this.locations == null )
176 {
177 this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
178 }
179 this.locations.put( key, location );
180 }
181 } //-- void setLocation( Object, InputLocation )
182
183 /**
184 * Set configuration for notifying developers/users when a
185 * build is unsuccessful,
186 * including user information and notification
187 * mode.
188 *
189 * @param notifiers
190 */
191 public void setNotifiers( java.util.List<Notifier> notifiers )
192 {
193 this.notifiers = notifiers;
194 } //-- void setNotifiers( java.util.List )
195
196 /**
197 * Set the name of the continuous integration system, e.g.
198 * <code>continuum</code>.
199 *
200 * @param system
201 */
202 public void setSystem( String system )
203 {
204 this.system = system;
205 } //-- void setSystem( String )
206
207 /**
208 * Set uRL for the continuous integration system used by the
209 * project if it has a web
210 * interface.
211 *
212 * @param url
213 */
214 public void setUrl( String url )
215 {
216 this.url = url;
217 } //-- void setUrl( String )
218
219 }