1 package org.apache.continuum.dao;
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 org.apache.continuum.model.repository.DistributedDirectoryPurgeConfiguration;
23 import org.apache.maven.continuum.store.ContinuumStoreException;
24
25 import java.util.List;
26
27 /**
28 * @author
29 * @version $Id: DistributedDirectoryPurgeConfigurationDao.java 1372260 2012-08-13 04:29:09Z brett $
30 */
31 public interface DistributedDirectoryPurgeConfigurationDao
32 {
33 /**
34 * Retrieve all DistributedDirectoryPurgeConfiguration instances.
35 *
36 * @return list of all DistributedDirectoryPurgeConfiguration instances
37 */
38 List<DistributedDirectoryPurgeConfiguration> getAllDistributedDirectoryPurgeConfigurations();
39
40 /**
41 * Retrieve all DistributedDirectoryPurgeConfiguration instances associated with the input scheduleId.
42 *
43 * @param scheduleId schedule id
44 * @return list of all DistributedDirectoryPurgeConfiguration instances associated with the input scheduleId
45 */
46 List<DistributedDirectoryPurgeConfiguration> getDistributedDirectoryPurgeConfigurationsBySchedule( int scheduleId );
47
48 /**
49 * Retrieve all enabled DistributedDirectoryPurgeConfiguration instances associated with the input scheduleId.
50 *
51 * @param scheduleId schedule id
52 * @return list of all enabled DistributedDirectoryPurgeConfiguration instances associated with the input scheduleId
53 */
54 List<DistributedDirectoryPurgeConfiguration> getEnableDistributedDirectoryPurgeConfigurationsBySchedule(
55 int scheduleId );
56
57 /**
58 * Retrieve all DistributedDirectoryPurgeConfiguration instances having the specified directory type.
59 *
60 * @param type directory type
61 * @return list of all DistributedDirectoryPurgeConfiguration instances having the specified directory type
62 */
63 List<DistributedDirectoryPurgeConfiguration> getDistributedDirectoryPurgeConfigurationsByType( String type );
64
65 /**
66 * Retrieve the DistributedDirectoryPurgeConfiguration instance associated with the input id.
67 *
68 * @param configurationId DistributedDirectoryPurgeConfiguration instance id
69 * @return DistributedDirectoryPurgeConfiguration instance
70 * @throws ContinuumStoreException if unable to retrieve an instance associated with the input id
71 */
72 DistributedDirectoryPurgeConfiguration getDistributedDirectoryPurgeConfiguration( int configurationId )
73 throws ContinuumStoreException;
74
75 /**
76 * Adds a new DistributedDirectoryPurgeConfiguration instance.
77 *
78 * @param purgeConfiguration DistributedDirectoryPurgeConfiguration instance to be added
79 * @return DistributedDirectoryPurgeConfiguration instance that was added
80 * @throws ContinuumStoreException if unable to add the new instance
81 */
82 DistributedDirectoryPurgeConfiguration addDistributedDirectoryPurgeConfiguration(
83 DistributedDirectoryPurgeConfiguration purgeConfiguration )
84 throws ContinuumStoreException;
85
86 /**
87 * Updates the DistributedDirectoryPurgeConfiguration instance.
88 *
89 * @param purgeConfiguration DistributedDirectoryPurgeConfiguration instance to be updated
90 * @throws ContinuumStoreException if unable to update the instance
91 */
92 void updateDistributedDirectoryPurgeConfiguration( DistributedDirectoryPurgeConfiguration purgeConfiguration )
93 throws ContinuumStoreException;
94
95 /**
96 * Removes the DistributedDirectoryPurgeConfiguration instance.
97 *
98 * @param purgeConfiguration DistributedDirectoryPurgeConfiguration instance to be removed
99 * @throws ContinuumStoreException if unable to remove the instance
100 */
101 void removeDistributedDirectoryPurgeConfiguration( DistributedDirectoryPurgeConfiguration purgeConfiguration )
102 throws ContinuumStoreException;
103 }