219 |
219 |
Connection con = null;
|
220 |
220 |
PreparedStatement stmt = null;
|
221 |
221 |
List<RuleSet> retList = new ArrayList<RuleSet>();
|
222 |
|
RuleSet retSet = null;
|
223 |
222 |
logger.debug("Accessing DB to get all RuleSets");
|
|
223 |
|
224 |
224 |
try {
|
225 |
225 |
con = getConnection();
|
226 |
226 |
String query="SELECT name, description, guidelines_acronym, visibility, id, short_name FROM rulesets ORDER BY id";
|
227 |
227 |
stmt = con.prepareStatement(query);
|
228 |
228 |
rs = stmt.executeQuery();
|
229 |
|
if (rs!=null){
|
230 |
|
|
231 |
|
while (rs.next()) {
|
232 |
|
retSet = new RuleSet();
|
233 |
|
retSet.setName(rs.getString(1));
|
234 |
|
retSet.setDescription(rs.getString(2));
|
235 |
|
retSet.setGuidelinesAcronym(rs.getString(3));
|
236 |
|
List<String> visibility = new ArrayList<String>();
|
237 |
|
Array tt = rs.getArray("visibility");
|
238 |
|
if (tt != null) {
|
239 |
|
String[] ent = (String[])tt.getArray();
|
240 |
|
visibility.addAll(Arrays.asList(ent));
|
|
229 |
|
|
230 |
while (rs.next()) {
|
|
231 |
RuleSet retSet = new RuleSet();
|
|
232 |
|
|
233 |
retSet.setName(rs.getString(1));
|
|
234 |
retSet.setDescription(rs.getString(2));
|
|
235 |
retSet.setGuidelinesAcronym(rs.getString(3));
|
|
236 |
List<String> visibility = new ArrayList<String>();
|
|
237 |
Array tt = rs.getArray("visibility");
|
|
238 |
if (tt != null) {
|
|
239 |
String[] ent = (String[])tt.getArray();
|
|
240 |
visibility.addAll(Arrays.asList(ent));
|
|
241 |
}
|
|
242 |
retSet.setVisibility(visibility);
|
|
243 |
retSet.setId(rs.getInt(5));
|
|
244 |
retSet.setShortName(rs.getString(6));
|
|
245 |
List <Rule> rules = this.getRulesOfRuleset(retSet.getId());
|
|
246 |
List <Rule> contentRules = new ArrayList<Rule>();
|
|
247 |
List <Rule> usageRules = new ArrayList<Rule>();
|
|
248 |
Set <Integer> contentRulesIds = new HashSet<Integer>();
|
|
249 |
Set <Integer> usageRulesIds = new HashSet<Integer>();
|
|
250 |
for (Rule rule : rules) {
|
|
251 |
if (rule.getJob_type().equals("content")) {
|
|
252 |
contentRules.add(rule);
|
|
253 |
contentRulesIds.add(rule.getId());
|
|
254 |
} else if (rule.getJob_type().equals("usage")) {
|
|
255 |
usageRules.add(rule);
|
|
256 |
usageRulesIds.add(rule.getId());
|
241 |
257 |
}
|
242 |
|
retSet.setVisibility(visibility);
|
243 |
|
retSet.setId(rs.getInt(5));
|
244 |
|
retSet.setShortName(rs.getString(6));
|
245 |
|
List <Rule> rules = this.getRulesOfRuleset(retSet.getId());
|
246 |
|
List <Rule> contentRules = new ArrayList<Rule>();
|
247 |
|
List <Rule> usageRules = new ArrayList<Rule>();
|
248 |
|
Set <Integer> contentRulesIds = new HashSet<Integer>();
|
249 |
|
Set <Integer> usageRulesIds = new HashSet<Integer>();
|
250 |
|
for (Rule rule : rules) {
|
251 |
|
if (rule.getJob_type().equals("content")) {
|
252 |
|
contentRules.add(rule);
|
253 |
|
contentRulesIds.add(rule.getId());
|
254 |
|
} else if (rule.getJob_type().equals("usage")) {
|
255 |
|
usageRules.add(rule);
|
256 |
|
usageRulesIds.add(rule.getId());
|
257 |
|
}
|
258 |
|
}
|
259 |
|
retSet.setContentRules(contentRules);
|
260 |
|
retSet.setUsageRules(usageRules);
|
261 |
|
retSet.setContentRulesIds(contentRulesIds);
|
262 |
|
retSet.setUsageRulesIds(usageRulesIds);
|
263 |
|
retList.add(retSet);
|
264 |
|
}
|
|
258 |
}
|
|
259 |
retSet.setContentRules(contentRules);
|
|
260 |
retSet.setUsageRules(usageRules);
|
|
261 |
retSet.setContentRulesIds(contentRulesIds);
|
|
262 |
retSet.setUsageRulesIds(usageRulesIds);
|
|
263 |
retList.add(retSet);
|
265 |
264 |
}
|
266 |
|
|
267 |
265 |
} catch (Exception e) {
|
268 |
266 |
logger.error("Accessing DB to get all RuleSets.", e);
|
269 |
267 |
} finally {
|
Now releasing connections instead of closing them