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.artifact.repository.metadata;
007
008 /**
009 * Versioning information for an artifact (un-versioned or
010 * snapshot).
011 *
012 * @version $Revision$ $Date$
013 */
014 @SuppressWarnings( "all" )
015 public class Versioning
016 implements java.io.Serializable, java.lang.Cloneable
017 {
018
019 //--------------------------/
020 //- Class/Member Variables -/
021 //--------------------------/
022
023 /**
024 * What the latest version in the directory is, including
025 * snapshots.
026 */
027 private String latest;
028
029 /**
030 * What the latest version in the directory is, of the releases
031 * only.
032 */
033 private String release;
034
035 /**
036 * The current snapshot data in use for this version (artifact
037 * snapshots only).
038 */
039 private Snapshot snapshot;
040
041 /**
042 * Field versions.
043 */
044 private java.util.List<String> versions;
045
046 /**
047 * When the metadata was last updated.
048 */
049 private String lastUpdated;
050
051 /**
052 * Field snapshotVersions.
053 */
054 private java.util.List<SnapshotVersion> snapshotVersions;
055
056
057 //-----------/
058 //- Methods -/
059 //-----------/
060
061 /**
062 * Method addSnapshotVersion.
063 *
064 * @param snapshotVersion
065 */
066 public void addSnapshotVersion( SnapshotVersion snapshotVersion )
067 {
068 getSnapshotVersions().add( snapshotVersion );
069 } //-- void addSnapshotVersion( SnapshotVersion )
070
071 /**
072 * Method addVersion.
073 *
074 * @param string
075 */
076 public void addVersion( String string )
077 {
078 getVersions().add( string );
079 } //-- void addVersion( String )
080
081 /**
082 * Method clone.
083 *
084 * @return Versioning
085 */
086 public Versioning clone()
087 {
088 try
089 {
090 Versioning copy = (Versioning) super.clone();
091
092 if ( this.snapshot != null )
093 {
094 copy.snapshot = (Snapshot) this.snapshot.clone();
095 }
096
097 if ( this.versions != null )
098 {
099 copy.versions = new java.util.ArrayList<String>();
100 copy.versions.addAll( this.versions );
101 }
102
103 if ( this.snapshotVersions != null )
104 {
105 copy.snapshotVersions = new java.util.ArrayList<SnapshotVersion>();
106 for ( SnapshotVersion item : this.snapshotVersions )
107 {
108 copy.snapshotVersions.add( ( (SnapshotVersion) item).clone() );
109 }
110 }
111
112 return copy;
113 }
114 catch ( java.lang.Exception ex )
115 {
116 throw (java.lang.RuntimeException) new java.lang.UnsupportedOperationException( getClass().getName()
117 + " does not support clone()" ).initCause( ex );
118 }
119 } //-- Versioning clone()
120
121 /**
122 * Get when the metadata was last updated.
123 *
124 * @return String
125 */
126 public String getLastUpdated()
127 {
128 return this.lastUpdated;
129 } //-- String getLastUpdated()
130
131 /**
132 * Get what the latest version in the directory is, including
133 * snapshots.
134 *
135 * @return String
136 */
137 public String getLatest()
138 {
139 return this.latest;
140 } //-- String getLatest()
141
142 /**
143 * Get what the latest version in the directory is, of the
144 * releases only.
145 *
146 * @return String
147 */
148 public String getRelease()
149 {
150 return this.release;
151 } //-- String getRelease()
152
153 /**
154 * Get the current snapshot data in use for this version
155 * (artifact snapshots only).
156 *
157 * @return Snapshot
158 */
159 public Snapshot getSnapshot()
160 {
161 return this.snapshot;
162 } //-- Snapshot getSnapshot()
163
164 /**
165 * Method getSnapshotVersions.
166 *
167 * @return List
168 */
169 public java.util.List<SnapshotVersion> getSnapshotVersions()
170 {
171 if ( this.snapshotVersions == null )
172 {
173 this.snapshotVersions = new java.util.ArrayList<SnapshotVersion>();
174 }
175
176 return this.snapshotVersions;
177 } //-- java.util.List<SnapshotVersion> getSnapshotVersions()
178
179 /**
180 * Method getVersions.
181 *
182 * @return List
183 */
184 public java.util.List<String> getVersions()
185 {
186 if ( this.versions == null )
187 {
188 this.versions = new java.util.ArrayList<String>();
189 }
190
191 return this.versions;
192 } //-- java.util.List<String> getVersions()
193
194 /**
195 * Method removeSnapshotVersion.
196 *
197 * @param snapshotVersion
198 */
199 public void removeSnapshotVersion( SnapshotVersion snapshotVersion )
200 {
201 getSnapshotVersions().remove( snapshotVersion );
202 } //-- void removeSnapshotVersion( SnapshotVersion )
203
204 /**
205 * Method removeVersion.
206 *
207 * @param string
208 */
209 public void removeVersion( String string )
210 {
211 getVersions().remove( string );
212 } //-- void removeVersion( String )
213
214 /**
215 * Set when the metadata was last updated.
216 *
217 * @param lastUpdated
218 */
219 public void setLastUpdated( String lastUpdated )
220 {
221 this.lastUpdated = lastUpdated;
222 } //-- void setLastUpdated( String )
223
224 /**
225 * Set what the latest version in the directory is, including
226 * snapshots.
227 *
228 * @param latest
229 */
230 public void setLatest( String latest )
231 {
232 this.latest = latest;
233 } //-- void setLatest( String )
234
235 /**
236 * Set what the latest version in the directory is, of the
237 * releases only.
238 *
239 * @param release
240 */
241 public void setRelease( String release )
242 {
243 this.release = release;
244 } //-- void setRelease( String )
245
246 /**
247 * Set the current snapshot data in use for this version
248 * (artifact snapshots only).
249 *
250 * @param snapshot
251 */
252 public void setSnapshot( Snapshot snapshot )
253 {
254 this.snapshot = snapshot;
255 } //-- void setSnapshot( Snapshot )
256
257 /**
258 * Set information for each sub-artifact available in this
259 * artifact snapshot.
260 *
261 * @param snapshotVersions
262 */
263 public void setSnapshotVersions( java.util.List<SnapshotVersion> snapshotVersions )
264 {
265 this.snapshotVersions = snapshotVersions;
266 } //-- void setSnapshotVersions( java.util.List )
267
268 /**
269 * Set versions available of the artifact (both releases and
270 * snapshots).
271 *
272 * @param versions
273 */
274 public void setVersions( java.util.List<String> versions )
275 {
276 this.versions = versions;
277 } //-- void setVersions( java.util.List )
278
279
280 public void updateTimestamp()
281 {
282 setLastUpdatedTimestamp( new java.util.Date() );
283 }
284
285 public void setLastUpdatedTimestamp( java.util.Date date )
286 {
287 java.util.TimeZone timezone = java.util.TimeZone.getTimeZone( "UTC" );
288 java.text.DateFormat fmt = new java.text.SimpleDateFormat( "yyyyMMddHHmmss" );
289 fmt.setTimeZone( timezone );
290 setLastUpdated( fmt.format( date ) );
291 }
292
293 }