@Override public void removeRequest(Requests request) { if (null != request) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); request = (Requests) sess.get(Requests.class, request.getId()); List<Contacts> contTemp = request.getContacts(); List<Products> prodTemp = request.getProducts(); if (contTemp != null && contTemp.size() != 0) { sess.enableFetchProfile("requests-with-products"); contTemp = contactsDAO.getFromProxy(contTemp); for (Contacts contact : contTemp) { contact.getConnectedRequests().remove(request); sess.update(contact); } } if (prodTemp != null && prodTemp.size() != 0) { sess.enableFetchProfile("requests-with-products"); prodTemp = productsDAO.getFromProxy(prodTemp); for (Products product : prodTemp) { product.getRequestsForProduct().remove(request); sess.update(product); } } sess.update(request); sessionFactory.getCurrentSession().delete(request); } }
@Override public void addRequest(Requests request) { sessionFactory.getCurrentSession().save(request); List<Contacts> contTemp = request.getContacts(); List<Products> prodTemp = request.getProducts(); if (contTemp != null && contTemp.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("requests-with-products"); contTemp = contactsDAO.getFromProxy(contTemp); for (Contacts contact : contTemp) { contact.getConnectedRequests().add(request); contactsDAO.changeContact(contact); } } if (prodTemp != null && prodTemp.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("requests-with-products"); prodTemp = productsDAO.getFromProxy(prodTemp); for (Products product : prodTemp) { product.getRequestsForProduct().add(request); productsDAO.changeProduct(product); } } }
@Override public void removeTask(Daily task) { if (null != task) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); task = (Daily) sess.get(Daily.class, task.getId()); List<Events> temp = task.getEventsConnectedWithTask(); List<Calls> temp2 = task.getCallsConnectedWithTask(); List<Contacts> temp3 = task.getContactsConnectedWithTask(); if (temp != null && temp.size() != 0) { sess.enableFetchProfile("tasks-with-events"); temp = eventsDAO.getFromProxy(temp); for (Events event : temp) { event.getConnectedTasks().remove(task); sess.update(event); } } if (temp2 != null && temp2.size() != 0) { sess.enableFetchProfile("tasks-with-calls"); temp2 = callsDAO.getFromProxy(temp2); for (Calls call : temp2) { call.getTasks().remove(task); sess.update(call); } } if (temp3 != null && temp3.size() != 0) { sess.enableFetchProfile("tasks-with-contacts"); temp3 = contactsDAO.getFromProxy(temp3); for (Contacts contact : temp3) { contact.getTasks().remove(task); sess.update(contact); } } sess.update(task); sessionFactory.getCurrentSession().delete(task); } }
@Override public void addTask(Daily task) { sessionFactory.getCurrentSession().save(task); List<Events> temp = task.getEventsConnectedWithTask(); List<Calls> temp2 = task.getCallsConnectedWithTask(); List<Contacts> temp3 = task.getContactsConnectedWithTask(); if (temp != null && temp.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("tasks-with-events"); temp = eventsDAO.getFromProxy(temp); for (Events event : temp) { event.getConnectedTasks().add(task); eventsDAO.changeEvent(event); } } if (temp2 != null && temp2.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("tasks-with-calls"); temp2 = callsDAO.getFromProxy(temp2); for (Calls call : temp2) { call.getTasks().add(task); callsDAO.changeCall(call); } } if (temp3 != null && temp3.size() != 0) { org.hibernate.Session sess = sessionFactory.getCurrentSession(); sess.enableFetchProfile("tasks-with-contacts"); temp3 = contactsDAO.getFromProxy(temp3); for (Contacts contact : temp3) { contact.getTasks().add(task); contactsDAO.changeContact(contact); } } }