示例#1
0
  public void handleContinuation(String continuationId, List params, Redirector redirector)
      throws Exception {

    WebContinuation wk =
        this.continuationsMgr.lookupWebContinuation(continuationId, getInterpreterID());
    if (wk == null) {
      // Throw an InvalidContinuationException to be handled inside the
      // <map:handle-errors> sitemap element.
      throw new InvalidContinuationException(
          "The continuation ID " + continuationId + " is invalid.");
    }

    AppleController app = (AppleController) wk.getContinuation();

    getLogger().debug("found apple from continuation: " + app);

    // TODO access control checks? exception to be thrown for illegal access?
    processApple(params, redirector, app, wk);
  }
示例#2
0
 public void disposeContinuation(WebContinuation webContinuation) {
   AppleController app = (AppleController) webContinuation.getContinuation();
   if (app instanceof Disposable) {
     ((Disposable) app).dispose();
   }
 }