]> source.dussan.org Git - archiva.git/blob
d0dc381e46feac329f319b107b69402a0788d84b
[archiva.git] /
1 package org.apache.archiva.configuration;
2
3 /*
4  * Licensed to the Apache Software Foundation (ASF) under one
5  * or more contributor license agreements.  See the NOTICE file
6  * distributed with this work for additional information
7  * regarding copyright ownership.  The ASF licenses this file
8  * to you under the Apache License, Version 2.0 (the
9  * "License"); you may not use this file except in compliance
10  * with the License.  You may obtain a copy of the License at
11  *
12  *   http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing,
15  * software distributed under the License is distributed on an
16  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  * KIND, either express or implied.  See the License for the
18  * specific language governing permissions and limitations
19  * under the License.
20  */
21
22 import java.io.Serializable;
23 import java.util.ArrayList;
24 import java.util.List;
25
26 /**
27  * Class RepositoryGroupConfiguration.
28  * 
29  * @version $Revision$ $Date$
30  */
31 @SuppressWarnings( "all" )
32 public class RepositoryGroupConfiguration
33     implements Serializable
34 {
35
36       //--------------------------/
37      //- Class/Member Variables -/
38     //--------------------------/
39
40     /**
41      * The id of the repository group.
42      */
43     private String id;
44
45     /**
46      * The name of the repository group
47      */
48     private String name;
49
50     /**
51      *
52      *             The repository type. Currently only MAVEN type
53      * is known.
54      *
55      */
56     private String type = "MAVEN";
57
58
59     /**
60      * The path of the merged index.
61      */
62     private String mergedIndexPath = ".indexer";
63
64     /**
65      * The time to live of the merged index of the repository group.
66      */
67     private int mergedIndexTtl = 30;
68
69     /**
70      * 
71      *           When to run the index merging for this group.
72      *
73      */
74     private String cronExpression = "";
75
76     /**
77      * Field repositories.
78      */
79     private List<String> repositories;
80
81     /**
82      * The path for local data
83      */
84     private String location;
85
86
87       //-----------/
88      //- Methods -/
89     //-----------/
90
91
92     /**
93      * Return the local path for group data. If the merged index property is set to a non absolute path,
94      * it is relative to this location.
95      *
96      * @return the path for group data storage
97      */
98     public String getLocation( )
99     {
100         return location;
101     }
102
103     /**
104      * Set the local path for group data
105      * @param location
106      */
107     public void setLocation( String location )
108     {
109         this.location = location;
110     }
111
112     /**
113      * Method addRepository.
114      * 
115      * @param string
116      */
117     public void addRepository( String string )
118     {
119         getRepositories().add( string );
120     } //-- void addRepository( String )
121
122     /**
123      * Get when to run the index merging for this group.
124      *           No default value.
125      * 
126      * @return String
127      */
128     public String getCronExpression()
129     {
130         return this.cronExpression;
131     } //-- String getCronExpression()
132
133     /**
134      * Get the id of the repository group.
135      * 
136      * @return String
137      */
138     public String getId()
139     {
140         return this.id;
141     } //-- String getId()
142
143     /**
144      * Get the path of the merged index.
145      * 
146      * @return String
147      */
148     public String getMergedIndexPath()
149     {
150         return this.mergedIndexPath;
151     } //-- String getMergedIndexPath()
152
153     /**
154      * Get the time to live of the merged index of the repository
155      * group.
156      * 
157      * @return int
158      */
159     public int getMergedIndexTtl()
160     {
161         return this.mergedIndexTtl;
162     } //-- int getMergedIndexTtl()
163
164     /**
165      * Method getRepositories.
166      * 
167      * @return List
168      */
169     public List<String> getRepositories()
170     {
171         if ( this.repositories == null )
172         {
173             this.repositories = new ArrayList<String>();
174         }
175
176         return this.repositories;
177     } //-- java.util.List<String> getRepositories()
178
179     /**
180      * Method removeRepository.
181      * 
182      * @param string
183      */
184     public void removeRepository( String string )
185     {
186         getRepositories().remove( string );
187     } //-- void removeRepository( String )
188
189     /**
190      * Set when to run the index merging for this group.
191      *           No default value.
192      * 
193      * @param cronExpression
194      */
195     public void setCronExpression( String cronExpression )
196     {
197         this.cronExpression = cronExpression;
198     } //-- void setCronExpression( String )
199
200     /**
201      * Set the id of the repository group.
202      * 
203      * @param id
204      */
205     public void setId( String id )
206     {
207         this.id = id;
208     } //-- void setId( String )
209
210     /**
211      * Set the path of the merged index.
212      * 
213      * @param mergedIndexPath
214      */
215     public void setMergedIndexPath( String mergedIndexPath )
216     {
217         this.mergedIndexPath = mergedIndexPath;
218     } //-- void setMergedIndexPath( String )
219
220     /**
221      * Set the time to live of the merged index of the repository
222      * group.
223      * 
224      * @param mergedIndexTtl
225      */
226     public void setMergedIndexTtl( int mergedIndexTtl )
227     {
228         this.mergedIndexTtl = mergedIndexTtl;
229     } //-- void setMergedIndexTtl( int )
230
231     /**
232      * Set the list of repository ids under the group.
233      * 
234      * @param repositories
235      */
236     public void setRepositories( List<String> repositories )
237     {
238         this.repositories = repositories;
239     } //-- void setRepositories( java.util.List )
240
241     public String getName() {
242         return name;
243     }
244
245     public void setName(String name) {
246         this.name = name;
247     }
248
249     public String getType() {
250         return type;
251     }
252
253     public void setType(String type) {
254         this.type = type;
255     }
256 }