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

     1  package http
     2  
     3  import (
     4  	"net/http"
     5  
     6  	"github.com/infraboard/mcube/http/response"
     7  
     8  	"github.com/infraboard/keyauth/apps/endpoint"
     9  )
    10  
    11  func (h *handler) ListResource(w http.ResponseWriter, r *http.Request) {
    12  	req := endpoint.NewQueryResourceRequestFromHTTP(r)
    13  
    14  	set, err := h.endpoint.QueryResources(
    15  		r.Context(),
    16  		req,
    17  	)
    18  	if err != nil {
    19  		response.Failed(w, err)
    20  		return
    21  	}
    22  
    23  	if len(set.Items) == 0 {
    24  		set.Items = []*endpoint.Resource{}
    25  	}
    26  
    27  	response.Success(w, set)
    28  	return
    29  }