KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > mvnforum > phpbb2mvnforum > db > jdbc > MessageFolderDAOImplJDBC


1 package org.mvnforum.phpbb2mvnforum.db.jdbc;
2
3 import java.sql.Connection JavaDoc;
4 import java.sql.PreparedStatement JavaDoc;
5 import java.sql.ResultSet JavaDoc;
6 import java.sql.SQLException JavaDoc;
7 import java.sql.Timestamp JavaDoc;
8 import java.util.Collection JavaDoc;
9
10 import org.mvnforum.util.DBUtils;
11
12 import net.myvietnam.mvncore.exception.AssertionException;
13 import net.myvietnam.mvncore.exception.CreateException;
14 import net.myvietnam.mvncore.exception.DatabaseException;
15 import net.myvietnam.mvncore.exception.DuplicateKeyException;
16 import net.myvietnam.mvncore.exception.ForeignKeyNotFoundException;
17 import net.myvietnam.mvncore.exception.ObjectNotFoundException;
18
19 import com.mvnforum.db.MessageFolderBean;
20 import com.mvnforum.db.MessageFolderDAO;
21
22 public class MessageFolderDAOImplJDBC implements MessageFolderDAO {
23
24     public void findByPrimaryKey(String JavaDoc folderName, int memberID)
25         throws ObjectNotFoundException, DatabaseException {
26         // TODO Auto-generated method stub
27
Connection JavaDoc connection = null;
28         PreparedStatement JavaDoc statement = null;
29         ResultSet JavaDoc resultSet = null;
30         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
31         sql.append("SELECT FolderOrder");
32         sql.append(" FROM " + TABLE_NAME);
33         sql.append(" WHERE FolderName = ? AND MemberID = ?");
34         try {
35             connection = DBUtils.getMvnConnection();
36             statement = connection.prepareStatement(sql.toString());
37             statement.setString(1, folderName);
38             statement.setInt(2, memberID);
39             resultSet = statement.executeQuery();
40             if (!resultSet.next()) {
41                 throw new ObjectNotFoundException("Cannot find the primary key (" + folderName + ", " + memberID + ") in table 'MessageFolder'.");
42             }
43         } catch(SQLException JavaDoc sqle) {
44             throw new DatabaseException("Error executing SQL in MessageFolderDAOImplJDBC.findByPrimaryKey.");
45         } finally {
46             DBUtils.closeResultSet(resultSet);
47             DBUtils.closeStatement(statement);
48             DBUtils.closeConnection(connection);
49         }
50
51
52     }
53
54     public void create(String JavaDoc folderName, int memberID, int folderOrder, int folderStatus, int folderOption,
55             int folderType, Timestamp JavaDoc folderCreationDate, Timestamp JavaDoc folderModifiedDate)
56         throws CreateException, DatabaseException, DuplicateKeyException, ForeignKeyNotFoundException {
57         // TODO Auto-generated method stub
58
try {
59             //Check if primary key already exists
60
findByPrimaryKey(folderName, memberID);
61             //If so, then we have to throw an exception
62
throw new DuplicateKeyException("Primary key already exists. Cannot create new MessageFolder with the same [FolderName, MemberID] (" + folderName + ", " + memberID + ").");
63         } catch(ObjectNotFoundException e) {
64             //Otherwise we can go ahead
65
}
66
67         Connection JavaDoc connection = null;
68         PreparedStatement JavaDoc statement = null;
69         StringBuffer JavaDoc sql = new StringBuffer JavaDoc(512);
70         sql.append("INSERT INTO " + TABLE_NAME + " (FolderName, MemberID, FolderOrder, FolderStatus, FolderOption, FolderType, FolderCreationDate, FolderModifiedDate)");
71         sql.append(" VALUES (?, ?, ?, ?, ?, ?, ?, ?)");
72         try {
73             connection = DBUtils.getMvnConnection();
74             statement = connection.prepareStatement(sql.toString());
75
76             statement.setString(1, folderName);
77             statement.setInt(2, memberID);
78             statement.setInt(3, folderOrder);
79             statement.setInt(4, folderStatus);
80             statement.setInt(5, folderOption);
81             statement.setInt(6, folderType);
82             statement.setTimestamp(7, folderCreationDate);
83             statement.setTimestamp(8, folderModifiedDate);
84
85             if (statement.executeUpdate() != 1) {
86                 throw new CreateException("Error adding a row into table 'MessageFolder'.");
87             }
88         } catch(SQLException JavaDoc sqle) {
89             throw new DatabaseException("Error executing SQL in MessageFolderDAOImplJDBC.create.");
90         } finally {
91             DBUtils.closeStatement(statement);
92             DBUtils.closeConnection(connection);
93         }
94
95
96     }
97
98     public void delete(String JavaDoc folderName, int memberID)
99         throws DatabaseException, ObjectNotFoundException {
100         // TODO Auto-generated method stub
101

102     }
103
104     public MessageFolderBean getMessageFolder(String JavaDoc folderName, int memberID)
105         throws ObjectNotFoundException, DatabaseException {
106         // TODO Auto-generated method stub
107
return null;
108     }
109
110     public Collection JavaDoc getMessageFolders_inMember(int memberID)
111         throws DatabaseException {
112         // TODO Auto-generated method stub
113
return null;
114     }
115
116     public int getMaxFolderOrder(int memberID)
117         throws DatabaseException, AssertionException {
118         // TODO Auto-generated method stub
119
return 0;
120     }
121
122     public void increaseFolderOrder(String JavaDoc folderName, int memberID, Timestamp JavaDoc folderModifiedDate)
123         throws ObjectNotFoundException, DatabaseException {
124         // TODO Auto-generated method stub
125

126     }
127
128     public void decreaseFolderOrder(String JavaDoc folderName, int memberID, Timestamp JavaDoc folderModifiedDate)
129         throws ObjectNotFoundException, DatabaseException {
130         // TODO Auto-generated method stub
131

132     }
133
134 }
135
Popular Tags