public List<Person> findWithinCircle(double x, double y, double r, SurfaceType surfaceType) { Circle circle = new Circle(x, y, r); circle.setSurfaceType(surfaceType); Query q = em.createQuery("Select p from Person p where p.currentLocation IN ?1"); q.setParameter(1, circle); List<Person> persons = q.getResultList(); return persons; }
/** * @param d * @param e * @return */ public List<Person> findUsingCLWithEQ(double x, double y) { Circle circle = new Circle(x, y, 0); circle.setSurfaceType(SurfaceType.FLAT); Query q = em.createQuery("Select p from Person p where p.currentLocation IN ?1"); q.setParameter(1, circle); List<Person> persons = q.getResultList(); return persons; }
/** * @param d * @param e * @param f * @param flat * @return */ public int updateNameWithinCircle(double x, double y, double r, SurfaceType surfaceType) { Circle circle = new Circle(x, y, r); circle.setSurfaceType(surfaceType); Query q = em.createQuery("Update Person p SET p.name=Kuldeep where p.currentLocation IN ?1"); q.setParameter(1, circle); return q.executeUpdate(); // return persons; }
/** * @param d * @param e * @param f * @param flat * @return */ public int deleteNameWithinCircle(double x, double y, double r, SurfaceType surfaceType) { Circle circle = new Circle(x, y, r); circle.setSurfaceType(surfaceType); Query q = em.createQuery("Delete From Person p where p.currentLocation IN ?1"); q.setParameter(1, circle); return q.executeUpdate(); } }
/** * @param d * @param e * @param f * @param flat * @param string * @return */ public List<Person> findWithinCircleAndName(double x, double y, double r, SurfaceType surfaceType, String name) { Circle circle = new Circle(x, y, r); circle.setSurfaceType(surfaceType); Query q = em.createQuery("Select p from Person p where p.name = :name and p.currentLocation IN :circle"); q.setParameter("name", name); q.setParameter("circle", circle); List<Person> persons = q.getResultList(); return persons; }
twoDCircle.setSurfaceType(SurfaceType.SPHERICAL); Assert.assertNotNull(twoDCircle); Assert.assertEquals(coordiates2d, twoDCircle.getCentre()); threeDCircle.setSurfaceType(SurfaceType.SPHERICAL); Assert.assertNotNull(threeDCircle); Assert.assertEquals(coordiates3d, threeDCircle.getCentre());