mirror of https://github.com/grafana/grafana
parent
8009bc3940
commit
d2464812eb
@ -0,0 +1,50 @@ |
|||||||
|
package datasources |
||||||
|
|
||||||
|
import ( |
||||||
|
"github.com/grafana/grafana/pkg/log" |
||||||
|
"github.com/grafana/grafana/pkg/models" |
||||||
|
"github.com/grafana/grafana/pkg/registry" |
||||||
|
"github.com/grafana/grafana/pkg/setting" |
||||||
|
) |
||||||
|
|
||||||
|
type DataSourceService interface { |
||||||
|
GetById(id int64, user *models.SignedInUser) (*models.DataSource, error) |
||||||
|
} |
||||||
|
|
||||||
|
type DataSourceServiceImpl struct { |
||||||
|
log log.Logger |
||||||
|
Cfg *setting.Cfg `inject:""` |
||||||
|
Guardian DataSourceGuardian `inject:""` |
||||||
|
} |
||||||
|
|
||||||
|
func init() { |
||||||
|
registry.RegisterService(&DataSourceServiceImpl{}) |
||||||
|
registry.RegisterService(&DataSourceGuardianNoop{}) |
||||||
|
} |
||||||
|
|
||||||
|
func (srv *DataSourceServiceImpl) Init() error { |
||||||
|
srv.log = log.New("datasources") |
||||||
|
srv.log.Info("hello", "guardian", srv.Guardian.GetPermission(0, nil)) |
||||||
|
return nil |
||||||
|
} |
||||||
|
|
||||||
|
func (srv *DataSourceServiceImpl) GetById(id int64, user *models.SignedInUser) { |
||||||
|
// check cache
|
||||||
|
// Get by id from db
|
||||||
|
// check permissions
|
||||||
|
} |
||||||
|
|
||||||
|
type DataSourceGuardian interface { |
||||||
|
GetPermission(id int64, user *models.SignedInUser) bool |
||||||
|
} |
||||||
|
|
||||||
|
type DataSourceGuardianNoop struct { |
||||||
|
} |
||||||
|
|
||||||
|
func (dsg *DataSourceGuardianNoop) Init() error { |
||||||
|
return nil |
||||||
|
} |
||||||
|
|
||||||
|
func (dsg *DataSourceGuardianNoop) GetPermission(id int64, user *models.SignedInUser) bool { |
||||||
|
return false |
||||||
|
} |
Loading…
Reference in new issue