* @author vikram\r
* @version $Id: Group.java,v 1.0 2016/07/19\r
*/\r
+\r
public class Group extends Syncable {\r
\r
private static final String GROUP_ID_CONST = "groupid";\r
private String description;\r
private String classification;\r
private String members;\r
- private Date last_mod;\r
+ private Date lastMod;\r
\r
public Group() {\r
this("", "", "");\r
}\r
\r
+ /**\r
+ * Group constructor.\r
+ * @param name group name\r
+ * @param desc group description\r
+ * @param members group members\r
+ */\r
public Group(String name, String desc, String members) {\r
this.groupid = -1;\r
this.authid = "";\r
this.description = desc;\r
this.members = members;\r
this.classification = "";\r
- this.last_mod = new Date();\r
+ this.lastMod = new Date();\r
}\r
\r
\r
+ /**\r
+ * Group constructor from ResultSet.\r
+ * @param rs ResultSet\r
+ * @throws SQLException in case of SQL statement error\r
+ */\r
public Group(ResultSet rs) throws SQLException {\r
this.groupid = rs.getInt("GROUPID");\r
this.authid = rs.getString("AUTHID");\r
this.description = rs.getString("DESCRIPTION");\r
this.classification = rs.getString("CLASSIFICATION");\r
this.members = rs.getString("MEMBERS");\r
- this.last_mod = rs.getDate("LAST_MOD");\r
+ this.lastMod = rs.getDate("LAST_MOD");\r
}\r
\r
-\r
+ /**\r
+ * Group constructor for JSONObject.\r
+ * @param jo JSONObject\r
+ * @throws InvalidObjectException in case of JSON error\r
+ */\r
public Group(JSONObject jo) throws InvalidObjectException {\r
this("", "", "");\r
try {\r
}\r
}\r
\r
-\r
+ /**\r
+ * Get a group frpm DB.\r
+ * @param gup group object\r
+ * @return Group object\r
+ */\r
public static Group getGroupMatching(Group gup) {\r
String sql = String.format(\r
"select * from GROUPS where NAME='%s'",\r
return !list.isEmpty() ? list.get(0) : null;\r
}\r
\r
+ /**\r
+ * Get a group from DB using name and groupid.\r
+ * @param gup group object\r
+ * @param groupid id of group\r
+ * @return group object\r
+ */\r
public static Group getGroupMatching(Group gup, int groupid) {\r
String sql = String.format(\r
"select * from GROUPS where NAME = '%s' and GROUPID != %d ",\r
return !list.isEmpty() ? list.get(0) : null;\r
}\r
\r
+ /**\r
+ * Get group from DB using groupid only.\r
+ * @param id id of group\r
+ * @return group object\r
+ */\r
public static Group getGroupById(int id) {\r
String sql = "select * from GROUPS where GROUPID = " + id;\r
List<Group> list = getGroupsForSQL(sql);\r
return !list.isEmpty() ? list.get(0) : null;\r
}\r
\r
+ /**\r
+ * Get group from DB using AUTHID.\r
+ * @param id AUTHID\r
+ * @return group object\r
+ */\r
static Group getGroupByAuthId(String id) {\r
String sql = "select * from GROUPS where AUTHID = '" + id + "'";\r
List<Group> list = getGroupsForSQL(sql);\r
jo.put("description", description);\r
jo.put("classification", classification);\r
jo.put("members", members);\r
- jo.put("last_mod", last_mod.getTime());\r
+ jo.put("last_mod", lastMod.getTime());\r
return jo;\r
}\r
\r
@Override\r
- public boolean doInsert(Connection c) {\r
+ public boolean doInsert(Connection conn) {\r
boolean rv = true;\r
PreparedStatement ps = null;\r
try {\r
}\r
\r
// Create the GROUPS row\r
- String sql = "insert into GROUPS (GROUPID, AUTHID, NAME, DESCRIPTION, CLASSIFICATION, MEMBERS) values (?, ?, ?, ?, ?, ?)";\r
- ps = c.prepareStatement(sql, new String[]{"GROUPID"});\r
+ String sql = "insert into GROUPS (GROUPID, AUTHID, NAME, DESCRIPTION, CLASSIFICATION, MEMBERS) "\r
+ + "values (?, ?, ?, ?, ?, ?)";\r
+ ps = conn.prepareStatement(sql, new String[]{"GROUPID"});\r
ps.setInt(1, groupid);\r
ps.setString(2, authid);\r
ps.setString(3, name);\r
}\r
\r
@Override\r
- public boolean doUpdate(Connection c) {\r
+ public boolean doUpdate(Connection conn) {\r
boolean rv = true;\r
PreparedStatement ps = null;\r
try {\r
- String sql = "update GROUPS set AUTHID = ?, NAME = ?, DESCRIPTION = ?, CLASSIFICATION = ? , MEMBERS = ? where GROUPID = ?";\r
- ps = c.prepareStatement(sql);\r
+ String sql = "update GROUPS set AUTHID = ?, NAME = ?, DESCRIPTION = ?, CLASSIFICATION = ? , MEMBERS = ? "\r
+ + "where GROUPID = ?";\r
+ ps = conn.prepareStatement(sql);\r
ps.setString(1, authid);\r
ps.setString(2, name);\r
ps.setString(3, description);\r
}\r
\r
@Override\r
- public boolean doDelete(Connection c) {\r
+ public boolean doDelete(Connection conn) {\r
boolean rv = true;\r
PreparedStatement ps = null;\r
try {\r
String sql = "delete from GROUPS where GROUPID = ?";\r
- ps = c.prepareStatement(sql);\r
+ ps = conn.prepareStatement(sql);\r
ps.setInt(1, groupid);\r
ps.execute();\r
} catch (SQLException e) {\r
\r
@Override\r
public int hashCode() {\r
- return Objects.hash(groupid, authid, name, description, classification, members, last_mod);\r
+ return Objects.hash(groupid, authid, name, description, classification, members, lastMod);\r
}\r
}\r