github.com/infraboard/keyauth@v0.8.1/apps/endpoint/http/endpoint.go (about)

     1  package http
     2  
     3  import (
     4  	"net/http"
     5  
     6  	"github.com/infraboard/mcube/http/context"
     7  	"github.com/infraboard/mcube/http/request"
     8  	"github.com/infraboard/mcube/http/response"
     9  
    10  	"github.com/infraboard/keyauth/apps/endpoint"
    11  )
    12  
    13  // CreateApplication 创建自定义角色
    14  func (h *handler) Create(w http.ResponseWriter, r *http.Request) {
    15  	req := endpoint.NewDefaultRegistryRequest()
    16  	if err := request.GetDataFromRequest(r, req); err != nil {
    17  		response.Failed(w, err)
    18  		return
    19  	}
    20  
    21  	_, err := h.endpoint.RegistryEndpoint(
    22  		r.Context(),
    23  		req,
    24  	)
    25  	if err != nil {
    26  		response.Failed(w, err)
    27  		return
    28  	}
    29  
    30  	response.Success(w, req)
    31  }
    32  
    33  func (h *handler) List(w http.ResponseWriter, r *http.Request) {
    34  	req := endpoint.NewQueryEndpointRequestFromHTTP(r)
    35  
    36  	set, err := h.endpoint.QueryEndpoints(
    37  		r.Context(),
    38  		req,
    39  	)
    40  	if err != nil {
    41  		response.Failed(w, err)
    42  		return
    43  	}
    44  
    45  	response.Success(w, set)
    46  }
    47  
    48  func (h *handler) Get(w http.ResponseWriter, r *http.Request) {
    49  	rctx := context.GetContext(r)
    50  
    51  	id := rctx.PS.ByName("id")
    52  	req := endpoint.NewDescribeEndpointRequestWithID(id)
    53  
    54  	d, err := h.endpoint.DescribeEndpoint(
    55  		r.Context(),
    56  		req,
    57  	)
    58  	if err != nil {
    59  		response.Failed(w, err)
    60  		return
    61  	}
    62  
    63  	response.Success(w, d)
    64  }