func AddDataSource(cmd *m.AddDataSourceCommand) error { return inTransaction(func(sess *xorm.Session) error { ds := &m.DataSource{ OrgId: cmd.OrgId, Name: cmd.Name, Type: cmd.Type, Access: cmd.Access, Url: cmd.Url, User: cmd.User, Password: cmd.Password, Database: cmd.Database, IsDefault: cmd.IsDefault, BasicAuth: cmd.BasicAuth, BasicAuthUser: cmd.BasicAuthUser, BasicAuthPassword: cmd.BasicAuthPassword, JsonData: cmd.JsonData, Created: time.Now(), Updated: time.Now(), } if _, err := sess.Insert(ds); err != nil { return err } if err := updateIsDefaultFlag(ds, sess); err != nil { return err } cmd.Result = ds return nil }) }
func AddDataSource(c *middleware.Context, cmd m.AddDataSourceCommand) { cmd.OrgId = c.OrgId if err := bus.Dispatch(&cmd); err != nil { c.JsonApiErr(500, "Failed to add datasource", err) return } c.JSON(200, util.DynMap{"message": "Datasource added", "id": cmd.Result.Id}) }