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 * A repository contains the information needed for establishing
010 * connections with
011 * remote repository.
012 *
013 * @version $Revision$ $Date$
014 */
015 @SuppressWarnings( "all" )
016 public class RepositoryBase
017 implements java.io.Serializable, java.lang.Cloneable, org.apache.maven.model.InputLocationTracker
018 {
019
020 //--------------------------/
021 //- Class/Member Variables -/
022 //--------------------------/
023
024 /**
025 *
026 *
027 * A unique identifier for a repository. This is
028 * used to match the repository
029 * to configuration in the
030 * <code>settings.xml</code> file, for example. Furthermore,
031 * the identifier is
032 * used during POM inheritance and profile
033 * injection to detect repositories that should be merged.
034 *
035 *
036 */
037 private String id;
038
039 /**
040 * Human readable name of the repository.
041 */
042 private String name;
043
044 /**
045 *
046 *
047 * The url of the repository, in the form
048 * <code>protocol://hostname/path</code>.
049 *
050 *
051 */
052 private String url;
053
054 /**
055 *
056 *
057 * The type of layout this repository uses for
058 * locating and storing artifacts -
059 * can be <code>legacy</code> or
060 * <code>default</code>.
061 *
062 *
063 */
064 private String layout = "default";
065
066 /**
067 * Field locations.
068 */
069 private java.util.Map<Object, InputLocation> locations;
070
071
072 //-----------/
073 //- Methods -/
074 //-----------/
075
076 /**
077 * Method clone.
078 *
079 * @return RepositoryBase
080 */
081 public RepositoryBase clone()
082 {
083 try
084 {
085 RepositoryBase copy = (RepositoryBase) super.clone();
086
087 if ( copy.locations != null )
088 {
089 copy.locations = new java.util.LinkedHashMap( copy.locations );
090 }
091
092 return copy;
093 }
094 catch ( java.lang.Exception ex )
095 {
096 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
097 + " does not support clone()" ).initCause( ex );
098 }
099 } //-- RepositoryBase clone()
100
101 /**
102 * Method equals.
103 *
104 * @param other
105 * @return boolean
106 */
107 public boolean equals( Object other )
108 {
109 if ( this == other )
110 {
111 return true;
112 }
113
114 if ( !( other instanceof RepositoryBase ) )
115 {
116 return false;
117 }
118
119 RepositoryBase that = (RepositoryBase) other;
120 boolean result = true;
121
122 result = result && ( getId() == null ? that.getId() == null : getId().equals( that.getId() ) );
123
124 return result;
125 } //-- boolean equals( Object )
126
127 /**
128 * Get a unique identifier for a repository. This is used to
129 * match the repository
130 * to configuration in the
131 * <code>settings.xml</code> file, for example. Furthermore,
132 * the identifier is
133 * used during POM inheritance and profile
134 * injection to detect repositories that should be merged.
135 *
136 * @return String
137 */
138 public String getId()
139 {
140 return this.id;
141 } //-- String getId()
142
143 /**
144 * Get the type of layout this repository uses for locating and
145 * storing artifacts -
146 * can be <code>legacy</code> or
147 * <code>default</code>.
148 *
149 * @return String
150 */
151 public String getLayout()
152 {
153 return this.layout;
154 } //-- String getLayout()
155
156 /**
157 *
158 *
159 * @param key
160 * @return InputLocation
161 */
162 public InputLocation getLocation( Object key )
163 {
164 return ( locations != null ) ? locations.get( key ) : null;
165 } //-- InputLocation getLocation( Object )
166
167 /**
168 * Get human readable name of the repository.
169 *
170 * @return String
171 */
172 public String getName()
173 {
174 return this.name;
175 } //-- String getName()
176
177 /**
178 * Get the url of the repository, in the form
179 * <code>protocol://hostname/path</code>.
180 *
181 * @return String
182 */
183 public String getUrl()
184 {
185 return this.url;
186 } //-- String getUrl()
187
188 /**
189 * Method hashCode.
190 *
191 * @return int
192 */
193 public int hashCode()
194 {
195 int result = 17;
196
197 result = 37 * result + ( id != null ? id.hashCode() : 0 );
198
199 return result;
200 } //-- int hashCode()
201
202 /**
203 * Set a unique identifier for a repository. This is used to
204 * match the repository
205 * to configuration in the
206 * <code>settings.xml</code> file, for example. Furthermore,
207 * the identifier is
208 * used during POM inheritance and profile
209 * injection to detect repositories that should be merged.
210 *
211 * @param id
212 */
213 public void setId( String id )
214 {
215 this.id = id;
216 } //-- void setId( String )
217
218 /**
219 * Set the type of layout this repository uses for locating and
220 * storing artifacts -
221 * can be <code>legacy</code> or
222 * <code>default</code>.
223 *
224 * @param layout
225 */
226 public void setLayout( String layout )
227 {
228 this.layout = layout;
229 } //-- void setLayout( String )
230
231 /**
232 *
233 *
234 * @param key
235 * @param location
236 */
237 public void setLocation( Object key, InputLocation location )
238 {
239 if ( location != null )
240 {
241 if ( this.locations == null )
242 {
243 this.locations = new java.util.LinkedHashMap<Object, InputLocation>();
244 }
245 this.locations.put( key, location );
246 }
247 } //-- void setLocation( Object, InputLocation )
248
249 /**
250 * Set human readable name of the repository.
251 *
252 * @param name
253 */
254 public void setName( String name )
255 {
256 this.name = name;
257 } //-- void setName( String )
258
259 /**
260 * Set the url of the repository, in the form
261 * <code>protocol://hostname/path</code>.
262 *
263 * @param url
264 */
265 public void setUrl( String url )
266 {
267 this.url = url;
268 } //-- void setUrl( String )
269
270 /**
271 * Method toString.
272 *
273 * @return String
274 */
275 public java.lang.String toString()
276 {
277 StringBuilder buf = new StringBuilder( 128 );
278
279 buf.append( "id = '" );
280 buf.append( getId() );
281 buf.append( "'" );
282
283 return buf.toString();
284 } //-- java.lang.String toString()
285
286 }