Examples of PersistenceManager


Examples of javax.jdo.PersistenceManager

    this.targetTotalTime = targetTotalTime;
  }

  @SuppressWarnings("unchecked")
  public static Config getConfig() throws IOException {
    PersistenceManager pm = PMF.get().getPersistenceManager();
    try {
      String query = "select from " + Config.class.getName();
      List<Config> configs = (List<Config>) pm.newQuery(query).execute();
      if (configs.size() > 0) {
        Config config = configs.get(0);
        return pm.detachCopy(config);
      }
    } catch (Exception e) {
      throw new IOException("Error loading config", e);
    } finally {
      try {
        pm.close();
      } catch (Exception e) {
        log.severe(e.toString());
      }
    }
View Full Code Here

Examples of javax.jdo.PersistenceManager

    // fallback - no config ?
    return new Config();
  }

  public void save() throws IOException {
    PersistenceManager pm = PMF.get().getPersistenceManager();
    try {
      // save this
      pm.makePersistent(this);
    } finally {
      try {
        pm.close();
      } catch (Exception e) {
        log.severe(e.toString());
      }
    }
  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

    String id = args.get("id");
    String link = args.get("link");
   
    BlogManager blogManager = BlogManager.getInstance();
    DataManager dataManager = DataManagerFactory.getInstance();
    PersistenceManager pm = dataManager.newPersistenceManager();
   
    //get user
    User user = dataManager.getUserFromId(pm , id);
   
    //check if blog exists
    Blog blog = blogManager.getOrCreateSource(link);
   
    if (blog == null){
      //blog not found or not avaiable
      TalkService.sendMessage(user.getId(),"blog not found ! :(");
      return;
    }
   
    //check subscription
    Subscription sub = dataManager.getSubscription(pm , user, blog);
   
    //create new subscription
    if (sub == null){
      sub = new Subscription();
      sub.setBlogKey(blog.getKey());
      sub.setPriority(0);
      sub.setUserKey(user.getKey());
      sub.setLastProcessDate(new Date());
      sub.setLatestEntryNotifiedDate(new Date());
     
      pm.currentTransaction().begin();
      pm.makePersistent(sub);
      pm.currentTransaction().commit();

      TalkService.sendMessage(user.getId(),"source added ! :)");
      //update cache
      SubscriptionCache.removeUserFromCache(user.getId());
    } else {
      TalkService.sendMessage(user.getId(),"already subscribed");
    }
   
    pm.close();
    pm = null;
   
  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

    resp.addCookie(new Cookie("username", googleUser.getEmail()));
   

    DataManager dm = DataManagerFactory.getInstance();
    PersistenceManager pm = dm.newPersistenceManager();

    // fetch user
    Query qUser = pm.newQuery(talkfeed.data.User.class);
    qUser.setFilter("id == param");
    qUser.declareParameters("String param");
    qUser.setUnique(true);
    qUser.setRange(0, 1);
    talkfeed.data.User talkfeedUser = (talkfeed.data.User) qUser
        .execute(TextTools.cleanJID(googleUser.getEmail()));

    mav.getModel().put("showInvitation", talkfeedUser == null);
    qUser.closeAll();

    List<Blog> blogs = new ArrayList<Blog>();

    if (talkfeedUser != null) {
      // key from user
      Key key = talkfeedUser.getKey();

      // list subscription
      Query qSub = pm.newQuery(Subscription.class);
      qSub.setFilter("userKey == bk");
      qSub.declareParameters("com.google.appengine.api.datastore.Key bk");

      @SuppressWarnings("unchecked")
      List<Subscription> subs = (List<Subscription>) qSub.execute(key);

      for (Subscription sub : subs) {
        try {
          Blog b = pm.getObjectById(Blog.class, sub.getBlogKey());

          blogs.add(b);

        } catch (JDOObjectNotFoundException ex) {
          // blog deleted ! bad !!
          pm.currentTransaction().begin();
          pm.deletePersistent(sub);
          pm.currentTransaction().commit();
          pm.flush();
          continue;
        }
      }
      mav.getModel().put("blogs", blogs);
      qSub.closeAll();

    }

    pm.close();

    // no user
    if (talkfeedUser == null && googleUser != null && blogs.size() == 0) {
      return new ModelAndView("page/noblog");
    }
View Full Code Here

Examples of javax.jdo.PersistenceManager

  }

  @RequestMapping(value = "/ajax/posts.*", method = RequestMethod.GET)
  public ModelAndView ajaxLastEntries(long blogId) {
    DataManager dm = DataManagerFactory.getInstance();
    PersistenceManager pm = dm.newPersistenceManager();

    // select subscriptions
    Query q = pm.newQuery(BlogEntry.class);
    q.setOrdering("pubDate desc");
    q.setRange(0, 15);

    q.setFilter("blogKey == bk");
    q.declareParameters("com.google.appengine.api.datastore.Key bk");

    List<BlogEntry> list = new ArrayList<BlogEntry>(15);

    Blog blog = pm.getObjectById(Blog.class, blogId);

    @SuppressWarnings("unchecked")
    Collection<BlogEntry> col = (Collection<BlogEntry>) q.execute(blog
        .getKey());

    for (BlogEntry be : col) {
      list.add(be);
    }

    pm.close();

    ModelAndView mav = new ModelAndView("ajax/posts");
    mav.getModel().put("posts", list);

    return mav;
View Full Code Here

Examples of javax.jdo.PersistenceManager

  public int removeBlogWithoutSubscription(){
    int nb = 0;
   
    DataManager dm = DataManagerFactory.getInstance();
   
    PersistenceManager pm = dm.newPersistenceManager();
   
    Query q = pm.newQuery(Blog.class);
   
    //fetch ALL blogs
    @SuppressWarnings("unchecked")
    List<Blog> allBlogs = (List<Blog>) q.execute();
   
    for(Blog b : allBlogs){
      //fetch sub
      Query sq = pm.newQuery(Subscription.class);
      sq.setFilter("blogKey == bk");
      sq.declareParameters("com.google.appengine.api.datastore.Key bk");
      sq.setRange(0, 1);
     
      @SuppressWarnings("unchecked")
      List<Subscription> ls = (List<Subscription>) sq.execute(b.getKey());
     
      if (ls.size() == 0){
        //delete blog without subscription
        pm.currentTransaction().begin();
        pm.deletePersistent(b);
        pm.currentTransaction().commit();
        nb++;
      }
    }
   
    pm.close();
   
    return nb;
  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

  public int removeOldestEntries(int nbdays){
    int nb = 0;
   
    DataManager dm = DataManagerFactory.getInstance();
   
    PersistenceManager pm = dm.newPersistenceManager();
   
    Query q = pm.newQuery(BlogEntry.class);
    q.setFilter("creaDate < date");
    q.setRange(0,50);
    q.declareParameters("java.util.Date date");
   
    Calendar cdat = Calendar.getInstance();
    cdat.add(Calendar.DATE , -nbdays);
   
    //fetch ALL blogs
    @SuppressWarnings("unchecked")
    List<BlogEntry> oldest = (List<BlogEntry>) q.execute(cdat.getTime());
   
    for(BlogEntry be : oldest){
      pm.currentTransaction().begin();
      pm.deletePersistent(be);
      pm.currentTransaction().commit();
      nb++;
    }

    pm.close();
   
    return nb;
  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

   * @return
   */
  public User getOrCreateUser(String jid){
   
    DataManager dm = DataManagerFactory.getInstance();
    PersistenceManager pm = dm.newPersistenceManager();
   
    User user = dm.getUserFromId(pm , jid);
    if (user == null){
      user = new User();
      user.setId(jid);
      user.setDateCrea(new Date());
      user.setNextUpdate(new Date());
      pm.currentTransaction().begin();
      pm.makePersistent(user);
      pm.currentTransaction().commit();
    }
   
   
    pm.close();
    pm = null;
   
    return user;
  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

  @SuppressWarnings("unchecked")
  public void updateUsers(int nbMax) {

    Date now = Calendar.getInstance().getTime();

    PersistenceManager pm = DataManagerFactory.getInstance()
        .newPersistenceManager();


    // find user
    Query q = pm.newQuery(User.class);
    q.setFilter("nextUpdate <= next && paused == false && presence == 'available'");
    q.setOrdering("nextUpdate");
    q.declareParameters("java.util.Date next");
    q.setRange(0, nbMax);

    // list user
    List<User> list = (List<User>) q.execute(now);

    for (User user : list) {
      //build task for queuing
      QueuedTask task = new QueuedTask();
      task.setType(TaskType.updateuser);
      task.addParam("id", user.getKey().getId());
      QueuedTask.enqueue(task);


    }

    // end of process
    q.closeAll();
    pm.close();

  }
View Full Code Here

Examples of javax.jdo.PersistenceManager

   * @return
   */
  public boolean removeUserSubscription(long id) {

    DataManager dm = DataManagerFactory.getInstance();
    PersistenceManager pm = dm.newPersistenceManager();

    Subscription s = pm.getObjectById(Subscription.class, new Long(id));
    pm.currentTransaction().begin();
    pm.deletePersistent(s);
    pm.currentTransaction().commit();
    pm.flush();

    pm.close();

    return true;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.