View Javadoc

1   /*
2    * $Id: BPELProcessDAO.java,v 1.1 2004/12/15 14:18:09 patforna Exp $
3    *
4    * Copyright (c) 2004 Patric Fornasier, Pawel Kowalski
5    * Berne University of Applied Sciences
6    * School of Engineering and Information Technology
7    * All rights reserved.
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  }