Inital work on SQL metric/annotation data source, #1542

This commit is contained in:
Torkel Ödegaard
2015-02-28 17:27:30 +01:00
parent a3fe1efa2b
commit d0d995da09
9 changed files with 136 additions and 31 deletions
+1 -1
View File
@@ -73,7 +73,7 @@ func Register(r *macaron.Macaron) {
// Data sources
r.Group("/datasources", func() {
r.Combo("/").Get(GetDataSources).Put(AddDataSource).Post(UpdateDataSource)
r.Combo("/").Get(GetDataSources).Put(AddDataSource).Post(bind(m.UpdateDataSourceCommand{}), UpdateDataSource)
r.Delete("/:id", DeleteDataSource)
r.Get("/:id", GetDataSourceById)
r.Get("/plugins", GetDataSourcePlugins)
+2 -8
View File
@@ -61,6 +61,7 @@ func GetDataSourceById(c *middleware.Context) {
User: ds.User,
BasicAuth: ds.BasicAuth,
IsDefault: ds.IsDefault,
JsonData: ds.JsonData,
})
}
@@ -101,14 +102,7 @@ func AddDataSource(c *middleware.Context) {
c.JsonOK("Datasource added")
}
func UpdateDataSource(c *middleware.Context) {
cmd := m.UpdateDataSourceCommand{}
if !c.JsonBody(&cmd) {
c.JsonApiErr(400, "Validation failed", nil)
return
}
func UpdateDataSource(c *middleware.Context, cmd m.UpdateDataSourceCommand) {
cmd.OrgId = c.OrgId
err := bus.Dispatch(&cmd)
+12 -11
View File
@@ -38,17 +38,18 @@ type Dashboard struct {
}
type DataSource struct {
Id int64 `json:"id"`
OrgId int64 `json:"orgId"`
Name string `json:"name"`
Type string `json:"type"`
Access m.DsAccess `json:"access"`
Url string `json:"url"`
Password string `json:"password"`
User string `json:"user"`
Database string `json:"database"`
BasicAuth bool `json:"basicAuth"`
IsDefault bool `json:"isDefault"`
Id int64 `json:"id"`
OrgId int64 `json:"orgId"`
Name string `json:"name"`
Type string `json:"type"`
Access m.DsAccess `json:"access"`
Url string `json:"url"`
Password string `json:"password"`
User string `json:"user"`
Database string `json:"database"`
BasicAuth bool `json:"basicAuth"`
IsDefault bool `json:"isDefault"`
JsonData map[string]interface{} `json:"jsonData"`
}
type MetricQueryResultDto struct {