1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: Apache-2.0
14 type versionWrapper struct {
15 Version Version `json:"version"`
18 type versionsResult struct {
19 Versions []Version `json:"versions"`
24 Project IDName `json:"project"`
25 Name string `json:"name"`
26 Description string `json:"description"`
27 Status string `json:"status"`
28 DueDate string `json:"due_date"`
29 CreatedOn string `json:"created_on"`
30 UpdatedOn string `json:"updated_on"`
33 func (c *Client) Version(id int) (*Version, error) {
34 res, err := c.Get("/versions/" + strconv.Itoa(id) + ".json")
38 defer res.Body.Close()
40 if res.StatusCode == 404 {
41 return nil, errors.New("Not Found")
45 err = responseHelper(res, &r, 200)
49 return &r.Version, nil
51 decoder := json.NewDecoder(res.Body)
53 if res.StatusCode != 200 {
55 err = decoder.Decode(&er)
57 err = errors.New(strings.Join(er.Errors, "\n"))
60 err = decoder.Decode(&r)
65 return &r.Version, nil