Files

83 lines
3.0 KiB
Go

// Code generated by go-swagger; DO NOT EDIT.
//
// Copyright NetFoundry Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// __ __ _
// \ \ / / (_)
// \ \ /\ / /_ _ _ __ _ __ _ _ __ __ _
// \ \/ \/ / _` | '__| '_ \| | '_ \ / _` |
// \ /\ / (_| | | | | | | | | | | (_| | : This file is generated, do not edit it.
// \/ \/ \__,_|_| |_| |_|_|_| |_|\__, |
// __/ |
// |___/
package cluster
// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the generate command
import (
"net/http"
"github.com/go-openapi/runtime/middleware"
)
// ClusterTransferLeadershipHandlerFunc turns a function with the right signature into a cluster transfer leadership handler
type ClusterTransferLeadershipHandlerFunc func(ClusterTransferLeadershipParams) middleware.Responder
// Handle executing the request and returning a response
func (fn ClusterTransferLeadershipHandlerFunc) Handle(params ClusterTransferLeadershipParams) middleware.Responder {
return fn(params)
}
// ClusterTransferLeadershipHandler interface for that can handle valid cluster transfer leadership params
type ClusterTransferLeadershipHandler interface {
Handle(ClusterTransferLeadershipParams) middleware.Responder
}
// NewClusterTransferLeadership creates a new http.Handler for the cluster transfer leadership operation
func NewClusterTransferLeadership(ctx *middleware.Context, handler ClusterTransferLeadershipHandler) *ClusterTransferLeadership {
return &ClusterTransferLeadership{Context: ctx, Handler: handler}
}
/* ClusterTransferLeadership swagger:route POST /cluster/transfer-leadership Cluster clusterTransferLeadership
Attempts to transfer leadership to a different member of the cluster
Attempts to transfer leadership to a different member of the cluster. Requires admin access.
*/
type ClusterTransferLeadership struct {
Context *middleware.Context
Handler ClusterTransferLeadershipHandler
}
func (o *ClusterTransferLeadership) ServeHTTP(rw http.ResponseWriter, r *http.Request) {
route, rCtx, _ := o.Context.RouteInfo(r)
if rCtx != nil {
*r = *rCtx
}
var Params = NewClusterTransferLeadershipParams()
if err := o.Context.BindValidRequest(r, route, &Params); err != nil { // bind params
o.Context.Respond(rw, r, route.Produces, route, err)
return
}
res := o.Handler.Handle(Params) // actually handle the request
o.Context.Respond(rw, r, route.Produces, route, res)
}