handleIncomingRequest method

void handleIncomingRequest(
  1. Request request,
  2. void responseWriter(
    1. Response
    )
)
inherited

Handles an incoming request, calling the appropriate method to handle it.

responseWriter is a function that will be provided the response to be sent on the stream. It is critical that this sends the response synchronously because additional events may be sent by handlers that must come after it.

Implementation

void handleIncomingRequest(
  Request request,
  void Function(Response) responseWriter,
) {
  if (request.command == 'initialize') {
    handle(
      request,
      initializeRequest,
      DartInitializeRequestArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'launch') {
    handle(
      request,
      _withVoidResponse(launchRequest),
      parseLaunchArgs,
      responseWriter,
    );
  } else if (request.command == 'attach') {
    handle(
      request,
      _withVoidResponse(attachRequest),
      parseAttachArgs,
      responseWriter,
    );
  } else if (request.command == 'restart') {
    handle(
      request,
      _withVoidResponse(restartRequest),
      _allowNullArg(RestartArguments.fromJson),
      responseWriter,
    );
  } else if (request.command == 'terminate') {
    handle(
      request,
      _withVoidResponse(terminateRequest),
      _allowNullArg(TerminateArguments.fromJson),
      responseWriter,
    );
  } else if (request.command == 'disconnect') {
    handle(
      request,
      _withVoidResponse(disconnectRequest),
      _allowNullArg(DisconnectArguments.fromJson),
      responseWriter,
    );
  } else if (request.command == 'configurationDone') {
    handle(
      request,
      _withVoidResponse(configurationDoneRequest),
      _allowNullArg(ConfigurationDoneArguments.fromJson),
      responseWriter,
    );
  } else if (request.command == 'setBreakpoints') {
    handle(
      request,
      setBreakpointsRequest,
      SetBreakpointsArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'setExceptionBreakpoints') {
    handle(
      request,
      setExceptionBreakpointsRequest,
      SetExceptionBreakpointsArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'pause') {
    handle(
      request,
      _withVoidResponse(pauseRequest),
      PauseArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'continue') {
    handle(
      request,
      continueRequest,
      ContinueArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'next') {
    handle(
      request,
      _withVoidResponse(nextRequest),
      NextArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'stepIn') {
    handle(
      request,
      _withVoidResponse(stepInRequest),
      StepInArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'stepOut') {
    handle(
      request,
      _withVoidResponse(stepOutRequest),
      StepOutArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'restartFrame') {
    handle(
      request,
      _withVoidResponse(restartFrameRequest),
      RestartFrameArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'threads') {
    handle(
      request,
      threadsRequest,
      _voidArgs,
      responseWriter,
    );
  } else if (request.command == 'stackTrace') {
    handle(
      request,
      stackTraceRequest,
      StackTraceArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'source') {
    handle(
      request,
      sourceRequest,
      SourceArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'scopes') {
    handle(
      request,
      scopesRequest,
      ScopesArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'variables') {
    handle(
      request,
      variablesRequest,
      VariablesArguments.fromJson,
      responseWriter,
    );
  } else if (request.command == 'evaluate') {
    handle(
      request,
      evaluateRequest,
      EvaluateArguments.fromJson,
      responseWriter,
    );
  } else {
    handle(
      request,
      customRequest,
      _allowNullArg(RawRequestArguments.fromJson),
      responseWriter,
    );
  }
}