github.com/pivotal-cf/go-pivnet/v6@v6.0.2/release_types.go (about) 1 package pivnet 2 3 import ( 4 "fmt" 5 "net/http" 6 "encoding/json" 7 ) 8 9 type ReleaseTypesService struct { 10 client Client 11 } 12 13 type ReleaseType string 14 15 type ReleaseTypesResponse struct { 16 ReleaseTypes []ReleaseType `json:"release_types" yaml:"release_types"` 17 } 18 19 func (r ReleaseTypesService) Get() ([]ReleaseType, error) { 20 url := fmt.Sprintf("/releases/release_types") 21 22 var response ReleaseTypesResponse 23 resp, err := r.client.MakeRequest( 24 "GET", 25 url, 26 http.StatusOK, 27 nil, 28 ) 29 if err != nil { 30 return nil, err 31 } 32 defer resp.Body.Close() 33 34 err = json.NewDecoder(resp.Body).Decode(&response) 35 if err != nil { 36 return nil, err 37 } 38 39 return response.ReleaseTypes, nil 40 }