01: /*
02: * (C) Copyright 2005 Nabh Information Systems, Inc.
03: *
04: * All copyright notices regarding Nabh's products MUST remain
05: * intact in the scripts and in the outputted HTML.
06: * This program is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public License
08: * as published by the Free Software Foundation; either version 2.1
09: * of the License, or (at your option) any later version.
10: *
11: * This program is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14: * GNU Lesser General Public License for more details.
15: *
16: * You should have received a copy of the GNU Lesser General Public License
17: * along with this program; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19: *
20: */
21: package com.nabhinc.util.db;
22:
23: import java.sql.Connection;
24: import java.sql.SQLException;
25:
26: import javax.portlet.PortletException;
27: import javax.portlet.PortletRequest;
28: import javax.servlet.http.HttpServletRequest;
29:
30: /**
31: *
32: *
33: * @author Padmanabh Dabke
34: * (c) 2005 Nabh Information Systems, Inc. All Rights Reserved.
35: */
36: public class IDCreationUtil {
37:
38: /**
39: * Used to store a id for a database record when the ID is generated
40: * using a IDCreator in an ActionProcessor.
41: */
42: public static final String RECORD_ID_ATTRIB = "nabh.record_id";
43:
44: public static int getRecordID(IDCreator idCreator, Connection conn,
45: PortletRequest request) throws SQLException {
46: //try {
47: int id = -1;
48: Integer idObj = (Integer) request
49: .getAttribute(RECORD_ID_ATTRIB);
50: if (idObj == null) {
51: if (idCreator != null) {
52: id = idCreator.getNextID(conn);
53: request.setAttribute(RECORD_ID_ATTRIB, new Integer(id));
54: }
55: } else {
56: id = idObj.intValue();
57: }
58: return id;
59: //} catch (SQLException ex) {
60: // throw new PortletException("Database exception in creating ID.", ex);
61: //}
62:
63: }
64:
65: public static int getRecordID(IDCreator idCreator, Connection conn,
66: HttpServletRequest request) throws PortletException {
67: try {
68: int id = -1;
69: Integer idObj = (Integer) request
70: .getAttribute(RECORD_ID_ATTRIB);
71: if (idObj == null) {
72: if (idCreator != null) {
73: id = idCreator.getNextID(conn);
74: request.setAttribute(RECORD_ID_ATTRIB, new Integer(
75: id));
76: }
77: } else {
78: id = idObj.intValue();
79: }
80: return id;
81: } catch (SQLException ex) {
82: throw new PortletException(
83: "Database exception in creating ID.", ex);
84: }
85:
86: }
87:
88: }
|