mirror of
https://github.com/grafana/grafana.git
synced 2025-02-16 18:34:52 -06:00
31 lines
610 B
Go
31 lines
610 B
Go
package hooks
|
|
|
|
import (
|
|
"github.com/grafana/grafana/pkg/api/dtos"
|
|
"github.com/grafana/grafana/pkg/registry"
|
|
)
|
|
|
|
type IndexDataHook func(indexData *dtos.IndexViewData)
|
|
|
|
type HooksService struct {
|
|
indexDataHooks []IndexDataHook
|
|
}
|
|
|
|
func init() {
|
|
registry.RegisterService(&HooksService{})
|
|
}
|
|
|
|
func (srv *HooksService) Init() error {
|
|
return nil
|
|
}
|
|
|
|
func (srv *HooksService) AddIndexDataHook(hook IndexDataHook) {
|
|
srv.indexDataHooks = append(srv.indexDataHooks, hook)
|
|
}
|
|
|
|
func (srv *HooksService) RunIndexDataHooks(indexData *dtos.IndexViewData) {
|
|
for _, hook := range srv.indexDataHooks {
|
|
hook(indexData)
|
|
}
|
|
}
|