* Copyright (c) KylinSoft Co., Ltd. 2024.All rights reserved.
* ha-api licensed under the Mulan Permissive Software License, Version 2.
* See LICENSE file for more details.
* Author: yangzhao_kl <yangzhao1@kylinos.cn>
* Date: Thu Jan 14 13:33:38 2021 +0800
*/
package controllers
import (
"encoding/json"
"gitee.com/openeuler/ha-api/models"
"gitee.com/openeuler/ha-api/utils"
"github.com/beego/beego/v2/server/web"
"github.com/chai2010/gettext-go"
)
type LocalHeartBeatController struct {
web.Controller
}
func (lhbc *LocalHeartBeatController) Delete() {
var reqData models.HeartbeatRequest
var result utils.GeneralResponse
if err := json.Unmarshal(lhbc.Ctx.Input.RequestBody, &reqData); err != nil {
result.Action = false
result.Error = gettext.Gettext("invalid input data")
lhbc.Data["json"] = &result
lhbc.ServeJSON()
return
}
result = models.DeleteHeartbeat(reqData)
lhbc.Data["json"] = &result
lhbc.ServeJSON()
}
type HeartBeatController struct {
web.Controller
}
func (hbc *HeartBeatController) Get() {
result := map[string]interface{}{}
data, err := models.GetHeartBeatConfig()
if err != nil {
result["action"] = false
result["error"] = err.Error()
} else {
result["action"] = true
result["data"] = data
}
hbc.Data["json"] = &result
hbc.ServeJSON()
}
func (hbc *HeartBeatController) Post() {
result := map[string]interface{}{}
data := hbc.Ctx.Input.RequestBody
if err := models.EditHeartbeatInfo(data); err != nil {
result["action"] = false
result["error"] = err.Error()
} else {
result["action"] = true
result["info"] = gettext.Gettext("Change cluster success")
}
hbc.Data["json"] = &result
hbc.ServeJSON()
}
type HeartBeatStatusController struct {
web.Controller
}
func (hbsc *HeartBeatStatusController) Get() {
result := map[string]interface{}{}
result["action"] = true
result["data"] = 0
hbsc.Data["json"] = &result
hbsc.ServeJSON()
}
type DiskHeartBeatController struct {
web.Controller
}
func (dhbc *DiskHeartBeatController) Get() {
result := map[string]interface{}{}
result["action"] = true
result["data"] = []string{}
dhbc.Data["json"] = &result
dhbc.ServeJSON()
}