Chore: Refactor usage of legacy data contracts (#41218)

Refactor usage of legacy data contracts. Moves legacy data contracts 
to pkg/tsdb/legacydata package.
Refactor pkg/expr to be a proper service/dependency that can be provided 
to wire to remove some unneeded dependencies to SSE in ngalert and other places.
Refactor pkg/expr to not use the legacydata,RequestHandler and use 
backend.QueryDataHandler instead.
This commit is contained in:
Marcus Efraimsson
2021-11-10 11:52:16 +01:00
committed by GitHub
parent d6ed5d295e
commit baab021fec
54 changed files with 732 additions and 951 deletions
+14 -4
View File
@@ -7,6 +7,7 @@ import (
"github.com/grafana/grafana/pkg/components/simplejson"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/plugins"
"github.com/grafana/grafana/pkg/services/encryption"
"github.com/grafana/grafana/pkg/setting"
)
@@ -35,15 +36,24 @@ func IsDataSource(uid string) bool {
// Service is service representation for expression handling.
type Service struct {
Cfg *setting.Cfg
DataService plugins.DataRequestHandler
cfg *setting.Cfg
dataService backend.QueryDataHandler
encryptionService encryption.Service
}
func ProvideService(cfg *setting.Cfg, pluginClient plugins.Client, encryptionService encryption.Service) *Service {
return &Service{
cfg: cfg,
dataService: pluginClient,
encryptionService: encryptionService,
}
}
func (s *Service) isDisabled() bool {
if s.Cfg == nil {
if s.cfg == nil {
return true
}
return !s.Cfg.ExpressionsEnabled
return !s.cfg.ExpressionsEnabled
}
// BuildPipeline builds a pipeline from a request.