示例#1
0
  public void topTask_go(Task now, Task later) throws Exception {
    perm.checkRead(this);
    if (wrt_ != null) {
      Task searchTask = new Task();
      Task writeBackTask = new Task();

      msi_.topTask_search(searchTask, writeBackTask, params_, wrt_, this);
      this.topTask_go_2(writeBackTask, later, searchTask);

      perm.replaceNowWithTask(this, searchTask);
      perm.replaceNowWithTask(msi_, searchTask);

      searchTask.hb(writeBackTask);
      writeBackTask.hb(later);
    } else {
      Task searchTask = new Task();
      Task writeBackTask = new Task();

      msi_.topTask_search(searchTask, writeBackTask, params_, this);
      this.topTask_go_3(writeBackTask, later, searchTask);

      perm.replaceNowWithTask(this, searchTask);
      perm.replaceNowWithTask(msi_, searchTask);

      searchTask.hb(writeBackTask);
      writeBackTask.hb(later);
    }
  }
示例#2
0
  public void topTask_go_3(Task now, Task later, Task result) {
    perm.checkWrite(this);
    System.out.println("MetaSearchRequest: writing back lists result");
    results = (List) result.result();

    perm.replaceNowWithTask(this, later);
    perm.replaceNowWithTask(msi_, later);
  }