1
2
3
4
5
6
7
8
9 package bexee.dao;
10
11 import bexee.model.process.BPELProcess;
12
13 /***
14 * The <code>BPELProcessDAO</code> abstracts the underlying data access
15 * implementation for <code>BPELProcess</code> objects to enable transparent
16 * access to the data source.
17 *
18 * @version $Revision: 1.1 $, $Date: 2004/12/15 14:18:09 $
19 * @author Patric Fornasier
20 * @author Pawel Kowalski
21 */
22 public interface BPELProcessDAO {
23
24 /***
25 * Inserts a new <code>BPELProcess</code>.
26 *
27 * @param process
28 * the <code>BPELProcess</code> to insert
29 * @return the name of the <code>BPELProcess</code> which serves as a
30 * unique identifier
31 * @throws DAOException
32 * to indicate that there went something wrong
33 */
34 public String insert(BPELProcess process) throws DAOException;
35
36 /***
37 * Finds a <code>BPELProcess</code> given its name.
38 *
39 * @param name
40 * the name of the <code>BPELProcess</code> to find
41 * @return the <code>BPELProcess</code> or null if no
42 * <code>BPELProcess</code> matches the given name
43 * @throws DAOException
44 * to indicate that there went something wrong
45 */
46 public BPELProcess find(String name) throws DAOException;
47
48 /***
49 * Deletes a <code>BPELProcess</code> given its name.
50 *
51 * @param name
52 * the name of the <code>BPELProcess</code> to delete
53 * @throws DAOException
54 * to indicate that there went something wrong
55 */
56 public void delete(String name) throws DAOException;
57
58 /***
59 * Deletes a <b>*ALL* </b> <code>BPELProcess</code> es.
60 *
61 * @throws DAOException
62 * to indicate that there went something wrong
63 */
64 public void deleteAll() throws DAOException;
65
66 /***
67 * Updates an existing <code>BPELProcess</code>.
68 *
69 * @param process
70 * the <code>BPELProcess</code> to update
71 * @throws DAOException
72 * to indicate that there went something wrong
73 */
74 public void update(BPELProcess process) throws DAOException;
75
76 /***
77 * Replaces an existing <code>BPELProcess</code>.
78 * <p>
79 * If the process doesn't exist it will be <code>insert</code> ed,
80 * otherwise it will be <code>update</code>d.
81 *
82 * @param process
83 * the <code>BPELProcess</code> to replace
84 * @return the id of the <code>BPELProcess</code>. This will be a new id
85 * in case the <code>BPELProcess</code> is <code>insert</code>
86 * ed or the id of the <code>update</code> d
87 * <code>BPELProcess</code>.
88 * @throws DAOException
89 * to indicate that there went something wrong
90 */
91 public String replace(BPELProcess process) throws DAOException;
92 }