code: function(metadata, current_listener) {
      // If there is a next call in the chain, run it. Otherwise do nothing.
      if (self.next_call) {
        // Wire together any listener provided with the next listener
        var listener = _getInterceptingListener(current_listener, next_listener);
        self.next_call.start(metadata, listener);
      }
    }
docs: Build the next method in the interceptor chain