public override Task <GetModuleResponse> GetModule(GetModuleRequest request, ServerCallContext context) { RemoteFrame frame = frameStore.GetObject(request.Frame.Id); SbModule module = frame.GetModule(); GetModuleResponse response = new GetModuleResponse(); if (module != null) { response.Module = new GrpcSbModule { Id = moduleStore.AddObject(module) }; } return(Task.FromResult(response)); }
public override Task <GetModuleAtIndexResponse> GetModuleAtIndex( GetModuleAtIndexRequest request, ServerCallContext context) { if (!_targetStore.TryGetValue(request.Target.Id, out RemoteTarget target)) { ErrorUtils.ThrowError(StatusCode.Internal, "Could not find target in store: " + request.Target.Id); } var response = new GetModuleAtIndexResponse(); SbModule module = target.GetModuleAtIndex(request.Index); if (module != null) { response.Module = new GrpcSbModule { Id = _moduleStore.AddObject(module) }; } return(Task.FromResult(response)); }
public override Task <GetFramesWithInfoResponse> GetFramesWithInfo( GetFramesWithInfoRequest request, ServerCallContext context) { var thread = threadStore.GetObject(request.Thread.Id); var framesWithInfo = thread.GetFramesWithInfo((FrameInfoFlags)request.Fields, request.StartIndex, request.MaxCount); var response = new GetFramesWithInfoResponse(); foreach (var frameWithInfo in framesWithInfo) { var grpcFrameWithInfo = new GrpcFrameWithInfo(); grpcFrameWithInfo.Frame = CreateGrpcSbFrame(frameWithInfo.Frame); FrameInfo <SbModule> info = frameWithInfo.Info; long?moduleId = info.Module != null? moduleStore.AddObject(info.Module) : (long?)null; grpcFrameWithInfo.Info = GrpcFactoryUtils.CreateFrameInfo(info, moduleId); response.FramesWithInfo.Add(grpcFrameWithInfo); } return(Task.FromResult(response)); }