Ejemplo n.º 1
0
//Put("/api/servers/:id", "update :id server")
func (self *ServerAPI) Update(w http.ResponseWriter, r *http.Request) (json string, err error) {

	params := r.URL.Query()
	id := params.Get(":id")
	server, err := SM.Show(id)
	if err != nil {
		return
	}
	opt := &models.Server{}

	decoder := j.NewDecoder(r.Body)
	err = decoder.Decode(opt)
	if err != nil {
		return
	}
	server, err = models.New(opt.Port, opt.Method, opt.Password, opt.Limit, opt.Timeout)
	if err != nil {
		return
	}
	err = server.Update()
	if err != nil {
		return
	}
	err = SM.Create(server)
	if err != nil {
		return
	}
	return
}
Ejemplo n.º 2
0
//Post("/api/servers", "create new")
func (self *ServerAPI) Create(w http.ResponseWriter, r *http.Request) (json string, err error) {

	opt := &models.Server{}

	decoder := j.NewDecoder(r.Body)

	err = decoder.Decode(opt)
	if err != nil {
		err = errors.Newf("get params from request failed: %v", err)
		return
	}

	server, err := models.New(opt.Port, opt.Method, opt.Password, opt.Limit, opt.Timeout)
	if err != nil {
		return
	}

	err = SM.Create(server)
	if err != nil {
		return
	}
	return
}