in debugger/src/main/scala/org.apache.daffodil.debugger.dap/DAPodil.scala [167:198]
def handle(request: Request): IO[Unit] =
// TODO: java-debug doesn't seem to support the Restart request
request match {
case extract(Command.INITIALIZE, _) => initialize(request)
case extract(Command.CONFIGURATIONDONE, _) =>
session.sendResponse(request.respondSuccess())
case extract(Command.LAUNCH, _) =>
// We ignore the java-debug LaunchArguments because it is overspecialized for JVM debugging, and parse our own.
launch(request)
case _ if request.command == "loadedSources" =>
// the loadedSources command isn't supported by java-debug, so we parse it ourselves
loadedSources(request)
case extract(Command.SOURCE, args: SourceArguments) =>
source(request, args)
case extract(Command.SETBREAKPOINTS, args: SetBreakpointArguments) =>
setBreakpoints(request, args)
case extract(Command.THREADS, _) => threads(request)
case extract(Command.STACKTRACE, _) => stackTrace(request)
case extract(Command.SCOPES, args: ScopesArguments) =>
scopes(request, args)
case extract(Command.VARIABLES, args: VariablesArguments) =>
variables(request, args)
case extract(Command.NEXT, _) => next(request)
case extract(Command.CONTINUE, _) => continue(request)
case extract(Command.PAUSE, _) => pause(request)
case extract(Command.DISCONNECT, args: DisconnectArguments) =>
disconnect(request, args)
case extract(Command.EVALUATE, args: EvaluateArguments) =>
eval(request, args)
case _ =>
session.abort(ErrorEvent.UnhandledRequest(show"unhandled request $request"), show"unhandled request $request")
}