- private Date last_mod;\r
-\r
-\r
- public static Group getGroupMatching(Group gup) {\r
- String sql = String.format(\r
- "select * from GROUPS where NAME='%s'",\r
- gup.getName()\r
- );\r
- List<Group> list = getGroupsForSQL(sql);\r
- return list.size() > 0 ? list.get(0) : null;\r
- }\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
- gup.getName(),\r
- gup.getGroupid()\r
- );\r
- List<Group> list = getGroupsForSQL(sql);\r
- return list.size() > 0 ? list.get(0) : null;\r
- }\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.size() > 0 ? list.get(0) : null;\r
- }\r
-\r
- public static Group getGroupByAuthId(String id) {\r
- String sql = "select * from GROUPS where AUTHID = '" + id + "'";\r
- List<Group> list = getGroupsForSQL(sql);\r
- return list.size() > 0 ? list.get(0) : null;\r
- }\r
-\r
- public static Collection<Group> getAllgroups() {\r
- return getGroupsForSQL("select * from GROUPS");\r
- }\r
-\r
- private static List<Group> getGroupsForSQL(String sql) {\r
- List<Group> list = new ArrayList<Group>();\r
- try {\r
- DB db = new DB();\r
- @SuppressWarnings("resource")\r
- Connection conn = db.getConnection();\r
- try(Statement stmt = conn.createStatement()) {\r
- try(ResultSet rs = stmt.executeQuery(sql)) {\r
- while (rs.next()) {\r
- Group group = new Group(rs);\r
- list.add(group);\r
- }\r
- }\r
- }\r
- db.release(conn);\r
- } catch (SQLException e) {\r
- intlogger.error("SQLException " + e.getMessage());\r
- }\r
- return list;\r
- }\r
-\r
- public static int getMaxGroupID() {\r
- int max = 0;\r
- try {\r
- DB db = new DB();\r
- @SuppressWarnings("resource")\r
- Connection conn = db.getConnection();\r
- try(Statement stmt = conn.createStatement()) {\r
- try(ResultSet rs = stmt.executeQuery("select MAX(groupid) from GROUPS")) {\r
- if (rs.next()) {\r
- max = rs.getInt(1);\r
- }\r
- }\r
- }\r
- db.release(conn);\r
- } catch (SQLException e) {\r
- intlogger.info("getMaxSubID: " + e.getMessage());\r
- intlogger.error("SQLException " + e.getMessage());\r
- }\r
- return max;\r
- }\r
-\r
- public static Collection<String> getGroupsByClassfication(String classfication) {\r
- List<String> list = new ArrayList<>();\r
- String sql = "select * from GROUPS where classification = ?";\r
- try {\r
- DB db = new DB();\r
- @SuppressWarnings("resource")\r
- Connection conn = db.getConnection();\r
- try(PreparedStatement stmt = conn.prepareStatement(sql)) {\r
- stmt.setString(1, classfication);\r
- try(ResultSet rs = stmt.executeQuery()) {\r
- while (rs.next()) {\r
- int groupid = rs.getInt("groupid");\r
-\r
- }\r
- }\r
- }\r
- db.release(conn);\r
- } catch (SQLException e) {\r
- intlogger.error("SQLException " + e.getMessage());\r
- }\r
- return list;\r
- }\r
-\r
- /**\r
- * Return a count of the number of active subscriptions in the DB.\r
- *\r
- * @return the count\r
- */\r
- public static int countActiveSubscriptions() {\r
- int count = 0;\r
- try {\r
- DB db = new DB();\r
- @SuppressWarnings("resource")\r
- Connection conn = db.getConnection();\r
- try(Statement stmt = conn.createStatement()) {\r
- try(ResultSet rs = stmt.executeQuery("select count(*) from SUBSCRIPTIONS")) {\r
- if (rs.next()) {\r
- count = rs.getInt(1);\r
- }\r
- }\r
- }\r
- db.release(conn);\r
- } catch (SQLException e) {\r
- intlogger.warn("PROV0008 countActiveSubscriptions: " + e.getMessage());\r
- intlogger.error("SQLException " + e.getMessage());\r
- }\r
- return count;\r
- }\r