MCPcopy Create free account
hub / github.com/bytebase/bytebase / DeleteWorksheet

Method DeleteWorksheet

backend/api/v1/worksheet_service.go:285–311  ·  view source on GitHub ↗

DeleteWorksheet deletes a worksheet.

(
	ctx context.Context,
	req *connect.Request[v1pb.DeleteWorksheetRequest],
)

Source from the content-addressed store, hash-verified

283
284// DeleteWorksheet deletes a worksheet.
285func (s *WorksheetService) DeleteWorksheet(
286 ctx context.Context,
287 req *connect.Request[v1pb.DeleteWorksheetRequest],
288) (*connect.Response[emptypb.Empty], error) {
289 projectID, worksheetID, err := common.GetProjectIDWorksheetID(req.Msg.Name)
290 if err != nil {
291 return nil, connect.NewError(connect.CodeInvalidArgument, err)
292 }
293
294 worksheet, err := s.findWorksheet(ctx, projectID, worksheetID, false /* loadFull */)
295 if err != nil {
296 return nil, err
297 }
298 ok, err := s.canWriteWorksheet(ctx, worksheet)
299 if err != nil {
300 return nil, connect.NewError(connect.CodeInternal, errors.Errorf("failed to check access with error: %v", err))
301 }
302 if !ok {
303 return nil, connect.NewError(connect.CodePermissionDenied, errors.Errorf("cannot write worksheet %s", worksheet.Title))
304 }
305
306 if err := s.store.DeleteWorkSheet(ctx, worksheet.ResourceID); err != nil {
307 return nil, connect.NewError(connect.CodeInternal, errors.Errorf("failed to delete worksheet: %v", err))
308 }
309
310 return connect.NewResponse(&emptypb.Empty{}), nil
311}
312
313// UpdateWorksheetOrganizer upsert the worksheet organizer.
314func (s *WorksheetService) UpdateWorksheetOrganizer(

Callers

nothing calls this directly

Calls 5

findWorksheetMethod · 0.95
canWriteWorksheetMethod · 0.95
GetProjectIDWorksheetIDFunction · 0.92
ErrorfMethod · 0.80
DeleteWorkSheetMethod · 0.80

Tested by

no test coverage detected