Examples of TaskEngine


Examples of edu.neu.ccs.task.TaskEngine

    agent.getEngine().evalInitScripts();
    persistence.load(agent, user.getId());
  }
 
  protected void initPlan(int id, User user, Agent agent) throws Exception {
    TaskEngine engine = agent.getEngine();
    TaskModelSet modelSet = engine.getModelSet();
    QName topName = new QName(modelSet.getDefaultModel().getURI(), top);
    TaskPlan topPlan = engine.newTaskPlan(topName);
    Task topTask = topPlan.getTask();
   
    for (Map.Entry<String, String> e : topInputs.entrySet())
      topTask.setSlotValueScript(e.getKey(), e.getValue(), "init agent");
   
View Full Code Here

Examples of edu.neu.ccs.task.TaskEngine

    receive("<PERFORM_COMPLETE");
    send("<SESSION EXIT=\"SOMETHING\"/>");
  }
 
  private void initPlan(String user) {
    TaskEngine engine = agent.getEngine();
    TaskModelSet modelSet = engine.getModelSet();
    QName topName = new QName(modelSet.getDefaultModel().getURI(), top);
    TaskPlan topPlan = engine.newTaskPlan(topName);
    Task topTask = topPlan.getTask();
   
    for (Map.Entry<String, String> e : topInputs.entrySet())
      topTask.setSlotValueScript(e.getKey(), e.getValue(), "init agent");
   
View Full Code Here

Examples of edu.neu.ccs.task.TaskEngine

  @Help("Usage: eval EXPR\n" +
      "EXPR is evaluated as a Javascript expression, and the\n" +
      "results are printed.  Evaluation is in the global \n" +
      "environment, so $this is not bound.")
  public void _eval(String expr) {
    TaskEngine e = getEngine();
    Object value = e.evalGlobal(expr, "console eval");
    if (value != null)
      out.println(e.asLiteral(value, "console eval"));
  }
View Full Code Here

Examples of edu.neu.ccs.task.TaskEngine

    this(null);
  }
 
  public Agent(TaskEngine engine) {
    this.engine = (engine!=null) ? engine :
      new TaskEngine(new TaskModelSet());
  }
View Full Code Here

Examples of org.jivesoftware.openfire.fastpath.util.TaskEngine

     * This is potentially more bandwidth intensive than having each workgroup watch
     * it's own schedule but uses less threads.</p>
     * TODO: trace down all events that cause a state change so we don't have to poll
     */
    private void startTimer() {
        TaskEngine taskEngine = TaskEngine.getInstance();
        taskEngine.schedule(new TimerTask() {
            @Override
      public void run() {
                workgroupLock.readLock().lock();
                try {
                    for (Workgroup group : workgroups.values()) {
                        Workgroup.Status currentOpen = group.getStatus();
                        Workgroup.Status oldOpen = workgroupOpenStatus.get(group.getID());
                        if (oldOpen != currentOpen) {
                            group.broadcastQueuesStatus();
                            workgroupOpenStatus.put(group.getID(), currentOpen);
                            if (Workgroup.Status.OPEN != oldOpen && Workgroup.Status.OPEN == currentOpen) {
                                // Trigger the event that the workgroup has been opened
                                group.notifyOpened();
                            }
                            else if (Workgroup.Status.OPEN == oldOpen) {
                                // Trigger the event that the workgroup has been closed
                                group.notifyClosed();
                            }
                        }
                    }
                }
                finally {
                    workgroupLock.readLock().unlock();
                }
            }
        }, 45000, 9000);

        // Every 5 minutes let the workgroups clean up dead requests or dead rooms. This may occur
        // if the connections were lost or the invitations were lost or whatever
        taskEngine.schedule(new TimerTask() {
            @Override
      public void run() {
                workgroupLock.readLock().lock();
                try {
                    for (Workgroup group : workgroups.values()) {
                        group.cleanup();
                    }
                }
                finally {
                    workgroupLock.readLock().unlock();
                }
            }
        }, 60000, 300000);

        // Every 15 seconds check for not answered room invitations
        taskEngine.schedule(new TimerTask() {
            @Override
      public void run() {
                workgroupLock.readLock().lock();
                try {
                    for (Workgroup group : workgroups.values()) {
                        group.checkRequests();
                    }
                }
                finally {
                    workgroupLock.readLock().unlock();
                }
            }
        }, 10000, 15000);

        // Every 30 seconds check if the search index of the workgroups should be updated
        taskEngine.schedule(new TimerTask() {
            @Override
      public void run() {
                workgroupLock.readLock().lock();
                try {
                    for (Workgroup group : workgroups.values()) {
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.