KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > infoglue > cms > util > workflow > InfoGlueMySQLJDBCWorkflowStore


1 /* ===============================================================================
2 *
3 * Part of the InfoGlue Content Management Platform (www.infoglue.org)
4 *
5 * ===============================================================================
6 *
7 * Copyright (C)
8 *
9 * This program is free software; you can redistribute it and/or modify it under
10 * the terms of the GNU General Public License version 2, as published by the
11 * Free Software Foundation. See the file LICENSE.html for more information.
12 *
13 * This program is distributed in the hope that it will be useful, but WITHOUT
14 * ANY WARRANTY, including the implied warranty of MERCHANTABILITY or FITNESS
15 * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License along with
18 * this program; if not, write to the Free Software Foundation, Inc. / 59 Temple
19 * Place, Suite 330 / Boston, MA 02111-1307 / USA.
20 *
21 * ===============================================================================
22 */

23
24 package org.infoglue.cms.util.workflow;
25
26 import java.sql.Connection JavaDoc;
27 import java.sql.PreparedStatement JavaDoc;
28 import java.sql.ResultSet JavaDoc;
29 import java.sql.SQLException JavaDoc;
30 import java.util.Map JavaDoc;
31
32 import com.opensymphony.workflow.StoreException;
33
34
35 /**
36  * JDBC implementation just overiding the init-method of the default JDBCWorkflowStore as it demanded DataStores.
37  *
38  * @author Mattias Bogeblad
39  */

40 public class InfoGlueMySQLJDBCWorkflowStore extends InfoGlueJDBCWorkflowStore
41 {
42
43     //~ Instance fields ////////////////////////////////////////////////////////
44

45     private String JavaDoc _stepSequenceIncrement = null;
46     private String JavaDoc _stepSequenceRetrieve = null;
47
48     //~ Methods ////////////////////////////////////////////////////////////////
49

50     public void init(Map JavaDoc props) throws StoreException
51     {
52         super.init(props);
53         _stepSequenceIncrement = (String JavaDoc) props.get("step.sequence.increment");
54         _stepSequenceRetrieve = (String JavaDoc) props.get("step.sequence.retrieve");
55     }
56
57     protected long getNextStepSequence(Connection JavaDoc c) throws SQLException JavaDoc
58     {
59         PreparedStatement JavaDoc stmt = null;
60         ResultSet JavaDoc rset = null;
61
62         try {
63             stmt = c.prepareStatement(_stepSequenceIncrement);
64             stmt.executeUpdate();
65             rset = stmt.executeQuery(_stepSequenceRetrieve);
66
67             rset.next();
68
69             long id = rset.getLong(1);
70
71             return id;
72         }
73         finally
74         {
75             cleanup(null, stmt, rset);
76         }
77     }
78 }
79
80
Popular Tags