/src/gisdcl/counties/CountyGeomDAO.java

https://bitbucket.org/iyusuf/schoolsearchgis · Java · 55 lines · 42 code · 8 blank · 5 comment · 4 complexity · 4a0425eea1d9fcb332ffba9185893d54 MD5 · raw file

  1. package gisdcl.counties;
  2. import gisdcl.PMF;
  3. import gisdcl.schools.DistrictIdToZip;
  4. import gisdcl.schools.SchoolDistrictGeoprocessorsResource;
  5. import java.util.List;
  6. import java.util.logging.Logger;
  7. import javax.jdo.PersistenceManager;
  8. import javax.jdo.Query;
  9. public class CountyGeomDAO {
  10. private static final Logger log = Logger.getLogger(CountyGeomDAO.class.getName());
  11. public CountyGeom getCountyByFips(String pFIPS) throws Exception{
  12. log.info(" starting getCountyByFips method ");
  13. //DataStore
  14. PersistenceManager pm = PMF.get().getPersistenceManager();
  15. Query query = pm.newQuery(CountyGeom.class);
  16. query.setFilter("fips == pFIPS");
  17. //query.setOrdering("hireDate desc");
  18. query.declareParameters("String pFIPS");
  19. try {
  20. List<CountyGeom> results = (List<CountyGeom>) query.execute(pFIPS);
  21. if(results.size()==1){
  22. CountyGeom e = results.get(0);
  23. log.info("..................");
  24. log.info("e.getCountyid() : " + e.getCountyid());
  25. log.info("e.getFips() : " + e.getFips());
  26. log.info("e.getName() : " + e.getName());
  27. log.info("e.getGeom() : " + e.getGeom());
  28. return e;
  29. } else if (results.size()>1){
  30. log.info("More than two counties found in data base. Check database please. Counties found: "+ results.size() +" for fips: " + pFIPS);
  31. //return ("More than two counties found in data base. Check database please. Counties found: "+ results.size() +" for fips: " + pFIPS);
  32. return null;
  33. } else {
  34. log.info("No counties found");
  35. //return ("No counites found");
  36. return null;
  37. }
  38. } catch (Exception e){
  39. log.info("Exception at DAO DistrictIdToZip");
  40. //return "Exception at DAO DistrictIdToZip";
  41. throw e;
  42. }finally {
  43. query.closeAll();
  44. pm.close();
  45. }
  46. }
  47. }