Chore: Add context to playlist (#41337)

* Add context to playlist

* Add AddEventListenerCtx and more context

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Update pkg/services/sqlstore/playlist.go

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>

* Fix lint

* Rename listener help function

Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com>
This commit is contained in:
idafurjes
2021-11-19 14:32:14 +01:00
committed by GitHub
co-authored by Marcus Efraimsson
parent 67f43cd7ab
commit 87f148aa27
12 changed files with 171 additions and 155 deletions
+15 -13
View File
@@ -1,6 +1,8 @@
package api
import (
"context"
"github.com/grafana/grafana/pkg/api/response"
"github.com/grafana/grafana/pkg/bus"
"github.com/grafana/grafana/pkg/models"
@@ -9,7 +11,7 @@ import (
func ValidateOrgPlaylist(c *models.ReqContext) {
id := c.ParamsInt64(":id")
query := models.GetPlaylistByIdQuery{Id: id}
err := bus.Dispatch(&query)
err := bus.DispatchCtx(c.Req.Context(), &query)
if err != nil {
c.JsonApiErr(404, "Playlist not found", err)
@@ -41,7 +43,7 @@ func SearchPlaylists(c *models.ReqContext) response.Response {
OrgId: c.OrgId,
}
err := bus.Dispatch(&searchQuery)
err := bus.DispatchCtx(c.Req.Context(), &searchQuery)
if err != nil {
return response.Error(500, "Search failed", err)
}
@@ -53,11 +55,11 @@ func GetPlaylist(c *models.ReqContext) response.Response {
id := c.ParamsInt64(":id")
cmd := models.GetPlaylistByIdQuery{Id: id}
if err := bus.Dispatch(&cmd); err != nil {
if err := bus.DispatchCtx(c.Req.Context(), &cmd); err != nil {
return response.Error(500, "Playlist not found", err)
}
playlistDTOs, _ := LoadPlaylistItemDTOs(id)
playlistDTOs, _ := LoadPlaylistItemDTOs(c.Req.Context(), id)
dto := &models.PlaylistDTO{
Id: cmd.Result.Id,
@@ -70,8 +72,8 @@ func GetPlaylist(c *models.ReqContext) response.Response {
return response.JSON(200, dto)
}
func LoadPlaylistItemDTOs(id int64) ([]models.PlaylistItemDTO, error) {
playlistitems, err := LoadPlaylistItems(id)
func LoadPlaylistItemDTOs(ctx context.Context, id int64) ([]models.PlaylistItemDTO, error) {
playlistitems, err := LoadPlaylistItems(ctx, id)
if err != nil {
return nil, err
@@ -93,9 +95,9 @@ func LoadPlaylistItemDTOs(id int64) ([]models.PlaylistItemDTO, error) {
return playlistDTOs, nil
}
func LoadPlaylistItems(id int64) ([]models.PlaylistItem, error) {
func LoadPlaylistItems(ctx context.Context, id int64) ([]models.PlaylistItem, error) {
itemQuery := models.GetPlaylistItemsByIdQuery{PlaylistId: id}
if err := bus.Dispatch(&itemQuery); err != nil {
if err := bus.DispatchCtx(ctx, &itemQuery); err != nil {
return nil, err
}
@@ -105,7 +107,7 @@ func LoadPlaylistItems(id int64) ([]models.PlaylistItem, error) {
func GetPlaylistItems(c *models.ReqContext) response.Response {
id := c.ParamsInt64(":id")
playlistDTOs, err := LoadPlaylistItemDTOs(id)
playlistDTOs, err := LoadPlaylistItemDTOs(c.Req.Context(), id)
if err != nil {
return response.Error(500, "Could not load playlist items", err)
@@ -129,7 +131,7 @@ func DeletePlaylist(c *models.ReqContext) response.Response {
id := c.ParamsInt64(":id")
cmd := models.DeletePlaylistCommand{Id: id, OrgId: c.OrgId}
if err := bus.Dispatch(&cmd); err != nil {
if err := bus.DispatchCtx(c.Req.Context(), &cmd); err != nil {
return response.Error(500, "Failed to delete playlist", err)
}
@@ -139,7 +141,7 @@ func DeletePlaylist(c *models.ReqContext) response.Response {
func CreatePlaylist(c *models.ReqContext, cmd models.CreatePlaylistCommand) response.Response {
cmd.OrgId = c.OrgId
if err := bus.Dispatch(&cmd); err != nil {
if err := bus.DispatchCtx(c.Req.Context(), &cmd); err != nil {
return response.Error(500, "Failed to create playlist", err)
}
@@ -150,11 +152,11 @@ func UpdatePlaylist(c *models.ReqContext, cmd models.UpdatePlaylistCommand) resp
cmd.OrgId = c.OrgId
cmd.Id = c.ParamsInt64(":id")
if err := bus.Dispatch(&cmd); err != nil {
if err := bus.DispatchCtx(c.Req.Context(), &cmd); err != nil {
return response.Error(500, "Failed to save playlist", err)
}
playlistDTOs, err := LoadPlaylistItemDTOs(cmd.Id)
playlistDTOs, err := LoadPlaylistItemDTOs(c.Req.Context(), cmd.Id)
if err != nil {
return response.Error(500, "Failed to save playlist", err)
}