X-Git-Url: https://gerrit.onap.org/r/gitweb?p=policy%2Fengine.git;a=blobdiff_plain;f=ONAP-PAP-REST%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Fpolicy%2Fpap%2Fxacml%2Frest%2Fdaoimpl%2FCommonClassDaoImpl.java;h=ee5c22f1c963544286a02521d8b3db34dc30ed31;hp=e5b6915bd8c7c10ee2a06c94c1aa27e74869e181;hb=1e61676b77dd09659027b8984f050df7e8538526;hpb=2fc1a1510259202e8854beb8c04ef045bd28c79b diff --git a/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/daoimpl/CommonClassDaoImpl.java b/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/daoimpl/CommonClassDaoImpl.java index e5b6915bd..ee5c22f1c 100644 --- a/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/daoimpl/CommonClassDaoImpl.java +++ b/ONAP-PAP-REST/src/main/java/org/onap/policy/pap/xacml/rest/daoimpl/CommonClassDaoImpl.java @@ -2,14 +2,14 @@ * ============LICENSE_START======================================================= * ONAP-PAP-REST * ================================================================================ - * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * Copyright (C) 2017,2019 AT&T Intellectual Property. All rights reserved. * ================================================================================ * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at - * + * * http://www.apache.org/licenses/LICENSE-2.0 - * + * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -49,89 +49,86 @@ import org.springframework.stereotype.Service; @Service("CommonClassDao") @Primary -public class CommonClassDaoImpl implements CommonClassDao{ +public class CommonClassDaoImpl implements CommonClassDao { private static final Log LOGGER = LogFactory.getLog(CommonClassDaoImpl.class); - private static SessionFactory sessionFactory; - @Autowired - private CommonClassDaoImpl(SessionFactory sessionFactory){ + private CommonClassDaoImpl(SessionFactory sessionFactory) { CommonClassDaoImpl.sessionFactory = sessionFactory; } - public CommonClassDaoImpl(){ - //Default Constructor + public CommonClassDaoImpl() { + // Default Constructor } - @SuppressWarnings({ "unchecked", "rawtypes" }) + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public List getData(Class className) { Session session = sessionFactory.openSession(); List data = null; - try{ + try { Criteria cr = session.createCriteria(className); data = cr.list(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table"+e); - }finally{ - try{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table" + e); + } finally { + try { session.close(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e); + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e); } } return data; } - - @SuppressWarnings({ "rawtypes", "unchecked" }) + @SuppressWarnings({"rawtypes", "unchecked"}) @Override public List getDataById(Class className, String columnName, String key) { Session session = sessionFactory.openSession(); List data = null; try { Criteria cr = session.createCriteria(className); - if(columnName.contains(":") && key.contains(":")){ + if (columnName.contains(":") && key.contains(":")) { String[] columns = columnName.split(":"); String[] keys = key.split(":"); - for(int i=0; i < columns.length; i++){ + for (int i = 0; i < columns.length; i++) { cr.add(Restrictions.eq(columns[i], keys[i])); } - }else{ + } else { cr.add(Restrictions.eq(columnName, key)); } data = cr.list(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table"+e); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } return data; } - @SuppressWarnings({ "unchecked", "rawtypes" }) + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public List getDataByColumn(Class className, String columnName) { Session session = sessionFactory.openSession(); List data = null; - try{ + try { Criteria cr = session.createCriteria(className); cr.setProjection(Projections.property(columnName)); data = cr.list(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table"+e); - }finally{ - try{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Table" + e); + } finally { + try { session.close(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e); + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e); } } return data; @@ -144,13 +141,13 @@ public class CommonClassDaoImpl implements CommonClassDao{ try { session.persist(entity); tx.commit(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Saving data to Table"+e); - }finally{ - try{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Saving data to Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } @@ -163,19 +160,18 @@ public class CommonClassDaoImpl implements CommonClassDao{ try { session.delete(entity); tx.commit(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Deleting data from Table"+e); - }finally{ - try{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Deleting data from Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } } - @Override public void update(Object entity) { Session session = sessionFactory.openSession(); @@ -183,20 +179,19 @@ public class CommonClassDaoImpl implements CommonClassDao{ try { session.update(entity); tx.commit(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating data to Table"+e); - }finally{ - try{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating data to Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } } - - @SuppressWarnings({ "unchecked", "rawtypes" }) + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public List checkDuplicateEntry(String value, String columnName, Class className) { Session session = sessionFactory.openSession(); @@ -204,38 +199,38 @@ public class CommonClassDaoImpl implements CommonClassDao{ List data = null; String[] columnNames = null; - if(columnName != null && columnName.contains(":")){ + if (columnName != null && columnName.contains(":")) { columnNames = columnName.split(":"); } String[] values = null; - if(value != null && value.contains(":")){ + if (value != null && value.contains(":")) { values = value.split(":"); } try { Criteria cr = session.createCriteria(className); - if(columnNames != null && values != null && columnNames.length == values.length){ - for (int i = 0; i < columnNames.length; i++){ - cr.add(Restrictions.eq(columnNames[i],values[i])); + if (columnNames != null && values != null && columnNames.length == values.length) { + for (int i = 0; i < columnNames.length; i++) { + cr.add(Restrictions.eq(columnNames[i], values[i])); } - }else{ - cr.add(Restrictions.eq(columnName,value)); + } else { + cr.add(Restrictions.eq(columnName, value)); } data = cr.list(); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying for Duplicate Entries for Table"+e + className); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying for Duplicate Entries for Table" + + e + className); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } return data; } - @SuppressWarnings("unchecked") @Override public List getDataByQuery(String query, SimpleBindings params) { @@ -245,29 +240,27 @@ public class CommonClassDaoImpl implements CommonClassDao{ try { Query hbquery = session.createQuery(query); for (Map.Entry paramPair : params.entrySet()) { - if(paramPair.getValue() instanceof java.lang.Long){ + if (paramPair.getValue() instanceof java.lang.Long) { hbquery.setLong(paramPair.getKey(), (long) paramPair.getValue()); - } - else{ + } else { hbquery.setParameter(paramPair.getKey(), paramPair.getValue()); } } data = hbquery.list(); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Database Table"+e); + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Database Table" + e); throw e; - }finally{ - try{ + } finally { + try { session.close(); - }catch(HibernateException e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement",e1); + } catch (HibernateException e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement", e1); } } return data; } - @Override public void updateQuery(String query) { Session session = sessionFactory.openSession(); @@ -277,17 +270,16 @@ public class CommonClassDaoImpl implements CommonClassDao{ hbquery.executeUpdate(); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating Database Table"+e); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating Database Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } } - @SuppressWarnings("rawtypes") @Override public Object getEntityItem(Class className, String columnName, String key) { @@ -296,30 +288,29 @@ public class CommonClassDaoImpl implements CommonClassDao{ Object data = null; try { Criteria cr = session.createCriteria(className); - if(columnName.contains(":") && key.contains(":")){ + if (columnName.contains(":") && key.contains(":")) { String[] columns = columnName.split(":"); String[] keys = key.split(":"); - for(int i=0; i < columns.length; i++){ + for (int i = 0; i < columns.length; i++) { cr.add(Restrictions.eq(columns[i], keys[i])); } - }else{ + } else { cr.add(Restrictions.eq(columnName, key)); } data = cr.list().get(0); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Database Table"+e); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying Database Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } return data; } - @SuppressWarnings("unchecked") @Override public List getUserRoles() { @@ -329,11 +320,11 @@ public class CommonClassDaoImpl implements CommonClassDao{ try { Criteria cr = session.createCriteria(PolicyRoles.class); Disjunction disjunction = Restrictions.disjunction(); - Conjunction conjunction1 = Restrictions.conjunction(); + Conjunction conjunction1 = Restrictions.conjunction(); conjunction1.add(Restrictions.eq("role", "admin")); - Conjunction conjunction2 = Restrictions.conjunction(); + Conjunction conjunction2 = Restrictions.conjunction(); conjunction2.add(Restrictions.eq("role", "editor")); - Conjunction conjunction3 = Restrictions.conjunction(); + Conjunction conjunction3 = Restrictions.conjunction(); conjunction3.add(Restrictions.eq("role", "guest")); disjunction.add(conjunction1); disjunction.add(conjunction2); @@ -341,18 +332,17 @@ public class CommonClassDaoImpl implements CommonClassDao{ rolesData = cr.add(disjunction).list(); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying PolicyRoles Table"+e); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying PolicyRoles Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } return rolesData; } - @SuppressWarnings("unchecked") @Override public void updateClAlarms(String clName, String alarms) { @@ -361,20 +351,19 @@ public class CommonClassDaoImpl implements CommonClassDao{ Transaction tx = session.beginTransaction(); try { Criteria cr = session.createCriteria(ClosedLoops.class); - cr.add(Restrictions.eq("closedLoopControlName",clName)); + cr.add(Restrictions.eq("closedLoopControlName", clName)); closedloopsdata = cr.list(); ClosedLoops closedloop = closedloopsdata.get(0); closedloop.setAlarmConditions(alarms); session.update(closedloop); tx.commit(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating ClosedLoops Table"+e); - }finally{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating ClosedLoops Table" + e); + } finally { session.close(); } } - @SuppressWarnings("unchecked") @Override public void updateClYaml(String clName, String yaml) { @@ -383,20 +372,19 @@ public class CommonClassDaoImpl implements CommonClassDao{ Transaction tx = session.beginTransaction(); try { Criteria cr = session.createCriteria(ClosedLoops.class); - cr.add(Restrictions.eq("closedLoopControlName",clName)); + cr.add(Restrictions.eq("closedLoopControlName", clName)); closedloopsdata = cr.list(); ClosedLoops closedloop = closedloopsdata.get(0); closedloop.setYaml(yaml); session.update(closedloop); tx.commit(); - }catch(Exception e){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating ClosedLoops Table"+e); - }finally{ + } catch (Exception e) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Updating ClosedLoops Table" + e); + } finally { session.close(); } } - @SuppressWarnings("unchecked") @Override public void deleteAll() { @@ -407,9 +395,10 @@ public class CommonClassDaoImpl implements CommonClassDao{ Criteria cr = session.createCriteria(ClosedLoops.class); closedloopsdata = cr.list(); - if(closedloopsdata!=null && !closedloopsdata.isEmpty()) { - LOGGER.info("ClosedLoops exist in the database, we need to delete them in our first step to buildCache()."); - for(int i=0; i < closedloopsdata.size(); i++) { + if (closedloopsdata != null && !closedloopsdata.isEmpty()) { + LOGGER.info( + "ClosedLoops exist in the database, we need to delete them in our first step to buildCache()."); + for (int i = 0; i < closedloopsdata.size(); i++) { ClosedLoops cl = closedloopsdata.get(i); session.delete(cl); } @@ -418,14 +407,15 @@ public class CommonClassDaoImpl implements CommonClassDao{ } tx.commit(); - }catch(Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error while deleting ClosedLoops from the table"+e); - }finally{ + } catch (Exception e) { + LOGGER.error( + XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error while deleting ClosedLoops from the table" + e); + } finally { session.close(); } } - @SuppressWarnings({ "unchecked"}) + @SuppressWarnings({"unchecked"}) @Override public List checkExistingGroupListforUpdate(String groupListValue, String groupNameValue) { Session session = sessionFactory.openSession(); @@ -433,26 +423,27 @@ public class CommonClassDaoImpl implements CommonClassDao{ List data = null; try { Criteria cr = session.createCriteria(GroupPolicyScopeList.class); - cr.add(Restrictions.eq("groupList",groupListValue)); + cr.add(Restrictions.eq("groupList", groupListValue)); Criterion expression = Restrictions.eq("name", groupNameValue); cr.add(Restrictions.not(expression)); data = cr.list(); tx.commit(); } catch (Exception e) { - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Querying for Duplicate Entries for GroupPolicyScopeList Table"+e); - }finally{ - try{ + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + + "Error While Querying for Duplicate Entries for GroupPolicyScopeList Table" + e); + } finally { + try { session.close(); - }catch(Exception e1){ - LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement"+e1); + } catch (Exception e1) { + LOGGER.error(XACMLErrorConstants.ERROR_PROCESS_FLOW + "Error While Closing Connection/Statement" + e1); } } return data; } - @Override - public List getMultipleDataOnAddingConjunction(@SuppressWarnings("rawtypes") Class className, String columnName, List data) { + public List getMultipleDataOnAddingConjunction(@SuppressWarnings("rawtypes") Class className, + String columnName, List data) { return null; } @@ -460,4 +451,4 @@ public class CommonClassDaoImpl implements CommonClassDao{ sessionFactory = sessionfactory; } -} \ No newline at end of file +}