backend/sqlstore: move GetDashboards to Dashboard Service (#49175)

I also did some mild file renaming to try and get the dashboards package closer in line with the sqlstore split design doc.
This commit is contained in:
Kristin Laemmert
2022-05-19 10:59:12 -04:00
committed by GitHub
parent 66220758b3
commit 33359aee6c
10 changed files with 63 additions and 27 deletions
@@ -6,6 +6,8 @@ import (
"fmt"
"time"
"xorm.io/xorm"
"github.com/grafana/grafana/pkg/infra/log"
"github.com/grafana/grafana/pkg/infra/metrics"
"github.com/grafana/grafana/pkg/models"
@@ -904,3 +906,23 @@ func (d *DashboardStore) GetDashboardUIDById(ctx context.Context, query *models.
return nil
})
}
func (d *DashboardStore) GetDashboards(ctx context.Context, query *models.GetDashboardsQuery) error {
return d.sqlStore.WithDbSession(ctx, func(sess *sqlstore.DBSession) error {
if len(query.DashboardIds) == 0 && len(query.DashboardUIds) == 0 {
return models.ErrCommandValidationFailed
}
var dashboards = make([]*models.Dashboard, 0)
var session *xorm.Session
if len(query.DashboardIds) > 0 {
session = sess.In("id", query.DashboardIds)
} else {
session = sess.In("uid", query.DashboardUIds)
}
err := session.Find(&dashboards)
query.Result = dashboards
return err
})
}