Package com.krminc.phr.dao

Examples of com.krminc.phr.dao.PersistenceService


        }
        catch(NullPointerException ex) {
            throw new WebApplicationException(Response.Status.FORBIDDEN);
        }
       
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            //check updateable
            if (getEntity().getDataSourceId() != 1) {
                throw new WebApplicationException(Response.Status.FORBIDDEN);
            }

            if (data.hasError) {
                throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
            }

            persistenceSvc.beginTx();
            EntityManager em = persistenceSvc.getEntityManager();
            updateEntity(getEntity(), data.resolveEntity(em));
            persistenceSvc.commitTx();
        } finally {
            persistenceSvc.close();
        }
    }
View Full Code Here


  }
  catch(NullPointerException ex) {
    throw new WebApplicationException(Response.Status.FORBIDDEN);
  }

        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            //check updateable
            if (getEntity().getDataSourceId() != 1) {
                throw new WebApplicationException(Response.Status.FORBIDDEN);
            }

            persistenceSvc.beginTx();
            deleteEntity(getEntity());
            persistenceSvc.commitTx();
        } finally {
            persistenceSvc.close();
        }
    }
View Full Code Here

            @QueryParam("max") @DefaultValue("10") int max,
            @QueryParam("source") @DefaultValue("self") String source,
            @QueryParam("orderBy") @DefaultValue("dateadded") String orderBy,
            @QueryParam("desc") @DefaultValue("1") int desc)
    {
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            persistenceSvc.beginTx();
            return new ImmunizationsConverter(
                getEntities(start, max, source, orderBy, desc),
                uriInfo.getAbsolutePath(),
                Api.DEFAULT_EXPAND_LEVEL
            );
        } finally {
            persistenceSvc.commitTx();
            persistenceSvc.close();
        }
    }
View Full Code Here

        }
        catch(NullPointerException ex) {
            throw new WebApplicationException(Response.Status.FORBIDDEN);
        }

        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            if (data.hasError) {
                throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
            }
           
            persistenceSvc.beginTx();
            EntityManager em = persistenceSvc.getEntityManager();
            Immunization entity = data.resolveEntity(em);
            createEntity(data.resolveEntity(em));
            persistenceSvc.commitTx();
            return Response.created(uriInfo.getAbsolutePath().resolve(entity.getImmunizationId() + "/")).build();
        } finally {
            persistenceSvc.close();
        }
    }
View Full Code Here

        @QueryParam("orderBy") @DefaultValue("name") String orderBy,
        @QueryParam("desc") @DefaultValue("0") int desc,
        @QueryParam("u") @DefaultValue("") String username,
        @QueryParam("e") @DefaultValue("") String name
    ) {
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            persistenceSvc.beginTx();
            return new UsersConverter(
                    getEntities(start, max, orderBy, desc, username, name),
                    uriInfo.getAbsolutePath(),
                    Api.DEFAULT_EXPAND_LEVEL + 2); //expand deep to pull in healthrecordID
        } finally {
            persistenceSvc.close();
        }
    }
View Full Code Here

        Boolean returnType = false;

        if (healthRecordIdToRemove != null)
        {

            PersistenceService persistenceSvc = PersistenceService.getInstance();

            try {
                EntityManager em = PersistenceService.getInstance().getEntityManager();
                User self = null;

                try {
                    persistenceSvc.beginTx();

                    //get user
                     self = getLocalUser(); //requires tx started

                     //find the correct hr
                     List<HealthRecord> healthRecords = self.getHealthRecords();
                     boolean shouldRemove = false;
                     HealthRecord toRemove = null;

                     for (HealthRecord hr : healthRecords) {
                         //prepare to remove link
                         if (healthRecordIdToRemove.compareTo(hr.getHealthRecordId()) == 0) {
                             toRemove = hr;
                             logger.debug("Ready to remove healthRecord {} from user {}", hr, self);
                             shouldRemove = true;
                         }
                     }

                     if (shouldRemove) {
                        healthRecords.remove(toRemove);
                        self.setHealthRecords(healthRecords);
                        em.flush();
                        persistenceSvc.commitTx();
                        returnType = true;
                     } else {
                         returnType = false;
                         persistenceSvc.rollbackTx();
                     }
                }
                catch (NoResultException ex) {
                    logger.error("Unable to find remove access for HRID: {}", healthRecordIdToRemove);
                    returnType = false;
                }

            }
            catch (Exception ex) {
                logger.error("removeAccess encountered exception: {}", ex);
                returnType = false;
            } finally {
                persistenceSvc.close();
            }
        } else {
            returnType = false;
        }
View Full Code Here

        User patient = null;
        boolean error = false;
        if (!username.isEmpty()) {

            //query on username
            PersistenceService persistenceSvc = PersistenceService.getInstance();

            try {
                EntityManager em = PersistenceService.getInstance().getEntityManager();

                try {
                    persistenceSvc.beginTx();

                     patient = (User) em.createNamedQuery("User.findByUsername")
                        .setParameter("username", username)
                        .setMaxResults(1)
                        .getSingleResult();

                     persistenceSvc.commitTx();
                     logger.debug("Found User by username: {}", patient);
                }
                catch (NoResultException ex) {
                    logger.error("Unable to find User object for username: {}", username);
                    error = true;
                    jsonResult.put("error", "Unable to find user with that name.");
                }

            }
            catch (Exception ex) {
                logger.error("requestAccess encountered exception: {}", ex);
                error = true;
                try {
                    jsonResult.put("error", "Unable to find user with that name.");
                }
                catch (JSONException ex2) {
                    throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
                }
            } finally {
                persistenceSvc.close();
            }

        } else if (!email.isEmpty()) {

            //query on email
            PersistenceService persistenceSvc = PersistenceService.getInstance();

            try {
                EntityManager em = persistenceSvc.getEntityManager();

                try {
                    persistenceSvc.beginTx();

                     patient = (User) em.createNamedQuery("User.findByEmail")
                        .setParameter("email", email)
                        .setMaxResults(1)
                        .getSingleResult();

                     persistenceSvc.commitTx();
                     logger.debug("Found User by email: {}", patient);
                }
                catch (NoResultException ex) {
                    error = true;
                    logger.error("Unable to find User object for email: {}", email);
                    jsonResult.put("error", "Unable to find user with that email address.");
                }

            }
            catch (Exception ex) {
                error = true;
                logger.error("requestAccess encountered exception: {}", ex);
                try {
                    jsonResult.put("error", "Unable to find user with that email address.");
                }
                catch (JSONException ex2) {
                    throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
                }
            } finally {
                persistenceSvc.close();
            }

        } else {
            //no params -- cant do anything
            error = true;
            try {
                jsonResult.put("error", "Invalid search parameters.");
            }
            catch (JSONException ex) {
                throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
            }
        }
       
        //check that we don't already have an outstanding requests for this patient
        if (!error) { //dont bother if we've already got issues
            PersistenceService persistenceSvc = PersistenceService.getInstance();
            List<HealthrecordRequest> requests = null;
           
            try {
                EntityManager em = persistenceSvc.getEntityManager();
                try {
                    //grab all existing requests made by this caretaker
                    requests = (List<HealthrecordRequest>) em.createNamedQuery("HealthrecordRequest.findByUserIdRequestor")
                        .setParameter("userIdRequestor", getLocalUser().getUserId())
                        .getResultList();
                }
                catch (NoResultException ex) {
                    //ignore -- this is fine
                }

            }
            catch (Exception ex) {
                error = true;
                logger.error("requestAccess encountered exception: {}", ex);
                try {
                    jsonResult.put("error", "Unable to lookup current outstanding requests.");
                }
                catch (JSONException ex2) {
                    throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
                }
            } finally {
                persistenceSvc.close();
            }
           
            if ((requests != null) && (!error)) {
                for (HealthrecordRequest hrr : requests) {
                    //check each request's requested record id - does it match the current request attempt?
View Full Code Here

        catch (Exception ex){
            throw new WebApplicationException(Response.Status.PRECONDITION_FAILED);
        }

        //persist request here via EM
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            persistenceSvc.beginTx();
            EntityManager em = persistenceSvc.getEntityManager();
            request = em.merge(request);
            persistenceSvc.commitTx();
        } catch (Exception ex) {
            //ignored
        } finally {
            persistenceSvc.close();
        }

        return (request.getRequestId() > 0);
    }
View Full Code Here

        return (request.getRequestId() > 0);
    }
   
    //helper method for listAccessRequests
    private List<String> getUsernamesRequestedByUser() {
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        List<HealthrecordRequest> requests = null;
        List<String> usernames = new ArrayList<String>();
        try {
            EntityManager em = persistenceSvc.getEntityManager();
            requests = em.createNamedQuery("HealthrecordRequest.findByUserIdRequestor")
                    .setParameter("userIdRequestor", getLocalUser().getUserId())
                    .getResultList();
           
            for (HealthrecordRequest req : requests) {
                HealthRecord rec = (HealthRecord) em.createNamedQuery("HealthRecord.findByHealthRecordId")
                            .setParameter("healthRecordId", req.getRecIdRequested())
                            .getSingleResult();
                usernames.add(rec.getUser()
                                .getUsername()
                        ); //this is not optimized at all
            }
           
        } catch (Exception ex) {
            requests = null;
            logger.error("ex: {}", ex);
        } finally {
            persistenceSvc.close();
        }
       
        return usernames;
    }
View Full Code Here

            @QueryParam("max") @DefaultValue("10") int max,
            @QueryParam("source") @DefaultValue("self") String source,
            @QueryParam("orderBy") @DefaultValue("dateadded") String orderBy,
            @QueryParam("desc") @DefaultValue("1") int desc
    ) {
        PersistenceService persistenceSvc = PersistenceService.getInstance();
        try {
            persistenceSvc.beginTx();
            return new CcrMedicationsConverter(getEntities(start, max, orderBy, desc), uriInfo.getAbsolutePath(), Api.DEFAULT_EXPAND_LEVEL);
        } finally {
            persistenceSvc.commitTx();
            persistenceSvc.close();
        }
    }
View Full Code Here

TOP

Related Classes of com.krminc.phr.dao.PersistenceService

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.