visitRuntimeAfter()

in lib/generator.js [1773:1790]


  visitRuntimeAfter(ast, level) {
    this.emit('} catch (Exception e) {\n', level + 1);
    this.emit('if (Tea.isRetryable(e)) {\n', level + 2);
    this.emit('_lastException = e;\n', level + 3);
    this.emit('continue;\n', level + 3);
    this.emit('}\n', level + 2);
    if (!this.NoException) {
      this.emit('throw e;\n', level + 2);
    } else {
      this.emit('if (e instanceof TeaException) {\n', level + 2);
      this.emit('throw e;\n', level + 3);
      this.emit('}\n', level + 2);
      this.emit('throw new TeaException(e.getMessage(), e);\n', level + 2);
    }
    this.emit('}\n', level + 1);
    this.emit('}\n', level);
    this.emit('throw new TeaUnretryableException(_lastRequest, _lastException);\n', level);
  }