Chore: Deprecate ID in GetFolderQuery (#77647)

pull/78000/head
Kat Yang 2 years ago committed by GitHub
parent a640d9d395
commit 8d581b8358
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      pkg/api/folder.go
  2. 2
      pkg/services/folder/folderimpl/folder.go
  3. 6
      pkg/services/folder/folderimpl/folder_test.go
  4. 3
      pkg/services/folder/folderimpl/sqlstore.go
  5. 2
      pkg/services/folder/folderimpl/sqlstore_test.go
  6. 3
      pkg/services/folder/model.go
  7. 2
      pkg/services/libraryelements/api.go

@ -117,6 +117,7 @@ func (hs *HTTPServer) GetFolderByID(c *contextmodel.ReqContext) response.Respons
if err != nil {
return response.Error(http.StatusBadRequest, "id is invalid", err)
}
// nolint:staticcheck
folder, err := hs.folderService.Get(c.Req.Context(), &folder.GetFolderQuery{ID: &id, OrgID: c.SignedInUser.GetOrgID(), SignedInUser: c.SignedInUser})
if err != nil {
return apierrors.ToFolderErrorResponse(err)

@ -123,6 +123,7 @@ func (s *Service) Get(ctx context.Context, cmd *folder.GetFolderQuery) (*folder.
if err != nil {
return nil, err
}
// nolint:staticcheck
case cmd.ID != nil:
dashFolder, err = s.getFolderByID(ctx, *cmd.ID, cmd.OrgID)
if err != nil {
@ -160,6 +161,7 @@ func (s *Service) Get(ctx context.Context, cmd *folder.GetFolderQuery) (*folder.
return dashFolder, nil
}
// nolint:staticcheck
if cmd.ID != nil {
cmd.ID = nil
cmd.UID = &dashFolder.UID

@ -102,7 +102,7 @@ func TestIntegrationFolderService(t *testing.T) {
t.Run("When get folder by id should return access denied error", func(t *testing.T) {
_, err := service.Get(context.Background(), &folder.GetFolderQuery{
ID: &folderId,
ID: &folderId, // nolint:staticcheck
OrgID: orgID,
SignedInUser: usr,
})
@ -112,7 +112,7 @@ func TestIntegrationFolderService(t *testing.T) {
var zeroInt int64 = 0
t.Run("When get folder by id, with id = 0 should return default folder", func(t *testing.T) {
foldr, err := service.Get(context.Background(), &folder.GetFolderQuery{
ID: &zeroInt,
ID: &zeroInt, // nolint:staticcheck
OrgID: orgID,
SignedInUser: usr,
})
@ -1179,7 +1179,7 @@ func TestNestedFolderService(t *testing.T) {
}, dbtest.NewFakeDB())
_, err := folderSvc.Get(context.Background(), &folder.GetFolderQuery{
OrgID: orgID,
ID: &folder.GeneralFolder.ID,
ID: &folder.GeneralFolder.ID, // nolint:staticcheck
SignedInUser: usr,
})
require.NoError(t, err)

@ -67,7 +67,7 @@ func (ss *sqlStore) Create(ctx context.Context, cmd folder.CreateFolderCommand)
}
foldr, err = ss.Get(ctx, folder.GetFolderQuery{
ID: &lastInsertedID,
ID: &lastInsertedID, // nolint:staticcheck
})
if err != nil {
return err
@ -164,6 +164,7 @@ func (ss *sqlStore) Get(ctx context.Context, q folder.GetFolderQuery) (*folder.F
switch {
case q.UID != nil:
exists, err = sess.SQL("SELECT * FROM folder WHERE uid = ? AND org_id = ?", q.UID, q.OrgID).Get(foldr)
// nolint:staticcheck
case q.ID != nil:
exists, err = sess.SQL("SELECT * FROM folder WHERE id = ?", q.ID).Get(foldr)
case q.Title != nil:

@ -431,7 +431,7 @@ func TestIntegrationGet(t *testing.T) {
t.Run("get folder by title should succeed", func(t *testing.T) {
ff, err := folderStore.Get(context.Background(), folder.GetFolderQuery{
ID: &f.ID,
ID: &f.ID, // nolint:staticcheck
})
require.NoError(t, err)
assert.Equal(t, f.ID, ff.ID)

@ -128,7 +128,8 @@ type DeleteFolderCommand struct {
// service will select the field with the most specificity, in order: ID, UID,
// Title.
type GetFolderQuery struct {
UID *string
UID *string
// Deprecated: use FolderUID instead
ID *int64
Title *string
OrgID int64

@ -83,6 +83,7 @@ func (l *LibraryElementService) createHandler(c *contextmodel.ReqContext) respon
// nolint:staticcheck
if element.FolderID != 0 {
// nolint:staticcheck
folder, err := l.folderService.Get(c.Req.Context(), &folder.GetFolderQuery{OrgID: c.SignedInUser.GetOrgID(), ID: &element.FolderID, SignedInUser: c.SignedInUser})
if err != nil {
return response.ErrOrFallback(http.StatusInternalServerError, "failed to get folder", err)
@ -228,6 +229,7 @@ func (l *LibraryElementService) patchHandler(c *contextmodel.ReqContext) respons
// nolint:staticcheck
if element.FolderID != 0 {
// nolint:staticcheck
folder, err := l.folderService.Get(c.Req.Context(), &folder.GetFolderQuery{OrgID: c.SignedInUser.GetOrgID(), ID: &element.FolderID, SignedInUser: c.SignedInUser})
if err != nil {
return response.Error(http.StatusInternalServerError, "failed to get folder", err)

Loading…
Cancel
Save