Advertisement
Guest User

Untitled

a guest
Jun 25th, 2017
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.72 KB | None | 0 0
  1.   @SuppressWarnings("unchecked")
  2.   @Override
  3.   public List<VideoSubmission> getSubmissions(String sortBy, String sortOrder, String statusFilter, String countryFilter, String genreFilter) {
  4.     PersistenceManager pm = pmf.getPersistenceManager();
  5.     List<VideoSubmission> submissions = null;
  6.  
  7.     try {
  8.       Query query = pm.newQuery(VideoSubmission.class);
  9.       query.declareImports("import java.util.Date");
  10.       query.setOrdering(sortBy + " " + sortOrder);
  11.       String filters = "";
  12.       if(!statusFilter.toUpperCase().equals("ALL")){
  13.           if(filters.equals(null) || filters.equals("")){
  14.             filters += " && ";  
  15.           }
  16.           query.declareParameters("String statusFilter");
  17.           filters += "status == statusFilter";
  18.       }
  19.       if(!countryFilter.toUpperCase().equals("ALL")){
  20.           if(filters.equals(null) || filters.equals("")){
  21.             filters += " && ";  
  22.           }
  23.           query.declareParameters("String countryFilter");
  24.           filters += "country == countryFilter";
  25.       }
  26.       if(!genreFilter.toUpperCase().equals("ALL")){
  27.           if(filters.equals(null) || filters.equals("")){
  28.             filters += " && ";
  29.           }          
  30.           query.declareParameters("String genreFilter");
  31.           filters += "genre == genreFilter";
  32.       }
  33.  
  34.       if(!filters.equals(null) || !filters.equals("")){
  35.           query.setFilter(filters);
  36.       }
  37.  
  38.       if(statusFilter.toUpperCase().equals("ALL") &&
  39.               countryFilter.toUpperCase().equals("ALL") &&
  40.               genreFilter.toUpperCase().equals("ALL")) {
  41.           LOG.log(Level.INFO,"none");
  42.  
  43.           submissions = (List<VideoSubmission>) query.execute();
  44.       } else if (statusFilter.toUpperCase().equals("ALL") &&
  45.               countryFilter.toUpperCase().equals("ALL") &&
  46.               !genreFilter.toUpperCase().equals("ALL")){
  47.           LOG.log(Level.INFO,"Only genre");
  48.  
  49.           submissions = (List<VideoSubmission>) query.execute(genreFilter);
  50.       } else if(statusFilter.toUpperCase().equals("ALL") &&
  51.               !countryFilter.toUpperCase().equals("ALL") &&
  52.               genreFilter.toUpperCase().equals("ALL")){
  53.           LOG.log(Level.INFO,"Only country");
  54.  
  55.           submissions = (List<VideoSubmission>) query.execute(countryFilter);
  56.       } else if(!statusFilter.toUpperCase().equals("ALL") &&
  57.               countryFilter.toUpperCase().equals("ALL") &&
  58.               genreFilter.toUpperCase().equals("ALL")){
  59.           LOG.log(Level.INFO,"Only status");
  60.          
  61.           submissions = (List<VideoSubmission>) query.execute(statusFilter);         
  62.       } else if(!statusFilter.toUpperCase().equals("ALL") &&
  63.               !countryFilter.toUpperCase().equals("ALL") &&
  64.               genreFilter.toUpperCase().equals("ALL")){
  65.          
  66.           submissions = (List<VideoSubmission>) query.execute(statusFilter, countryFilter);      
  67.       } else if(!statusFilter.toUpperCase().equals("ALL") &&
  68.               countryFilter.toUpperCase().equals("ALL") &&
  69.               !genreFilter.toUpperCase().equals("ALL")){
  70.          
  71.           submissions = (List<VideoSubmission>) query.execute(statusFilter, genreFilter);        
  72.       } else if(statusFilter.toUpperCase().equals("ALL") &&
  73.               !countryFilter.toUpperCase().equals("ALL") &&
  74.               !genreFilter.toUpperCase().equals("ALL")){
  75.          
  76.           submissions = (List<VideoSubmission>) query.execute(countryFilter, genreFilter);       
  77.       } else if (!statusFilter.toUpperCase().equals("ALL") &&
  78.               !countryFilter.toUpperCase().equals("ALL") &&
  79.               !genreFilter.toUpperCase().equals("ALL")){
  80.  
  81.           submissions = (List<VideoSubmission>) query.execute(statusFilter, countryFilter, genreFilter);         
  82.       }
  83.  
  84.       submissions = (List<VideoSubmission>) pm.detachCopyAll(submissions);
  85.  
  86.     } finally {
  87.       pm.close();
  88.     }
  89.  
  90.     return submissions;
  91.   }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement