X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/9f81dc57445cd51b92e34a82742765788c35620c..64c516079154f73da3f2a33a957fa8ae8eb23749:/sdk/go/arvados/api.go diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go index 3331be58d5..4e0348c083 100644 --- a/sdk/go/arvados/api.go +++ b/sdk/go/arvados/api.go @@ -55,9 +55,11 @@ var ( EndpointGroupUpdate = APIEndpoint{"PATCH", "arvados/v1/groups/{uuid}", "group"} EndpointGroupGet = APIEndpoint{"GET", "arvados/v1/groups/{uuid}", ""} EndpointGroupList = APIEndpoint{"GET", "arvados/v1/groups", ""} - EndpointGroupContents = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/contents", ""} - EndpointGroupShared = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/shared", ""} + EndpointGroupContents = APIEndpoint{"GET", "arvados/v1/groups/contents", ""} + EndpointGroupContentsUUIDInPath = APIEndpoint{"GET", "arvados/v1/groups/{uuid}/contents", ""} // Alternative HTTP route; client-side code should always use EndpointGroupContents instead + EndpointGroupShared = APIEndpoint{"GET", "arvados/v1/groups/shared", ""} EndpointGroupDelete = APIEndpoint{"DELETE", "arvados/v1/groups/{uuid}", ""} + EndpointGroupTrash = APIEndpoint{"POST", "arvados/v1/groups/{uuid}/trash", ""} EndpointGroupUntrash = APIEndpoint{"POST", "arvados/v1/groups/{uuid}/untrash", ""} EndpointUserActivate = APIEndpoint{"POST", "arvados/v1/users/{uuid}/activate", ""} EndpointUserCreate = APIEndpoint{"POST", "arvados/v1/users", "user"} @@ -117,6 +119,7 @@ type ListOptions struct { IncludeOldVersions bool `json:"include_old_versions"` BypassFederation bool `json:"bypass_federation"` ForwardedFor string `json:"forwarded_for,omitempty"` + Include string `json:"include"` } type CreateOptions struct { @@ -132,27 +135,23 @@ type UpdateOptions struct { BypassFederation bool `json:"bypass_federation"` } -type ContentsOptions struct { +type GroupContentsOptions struct { + ClusterID string `json:"cluster_id"` UUID string `json:"uuid,omitempty"` Select []string `json:"select"` Filters []Filter `json:"filters"` Limit int64 `json:"limit"` Offset int64 `json:"offset"` Order []string `json:"order"` + Distinct bool `json:"distinct"` + Count string `json:"count"` + Include string `json:"include"` Recursive bool `json:"recursive"` + IncludeTrash bool `json:"include_trash"` + IncludeOldVersions bool `json:"include_old_versions"` ExcludeHomeProject bool `json:"exclude_home_project"` } -type SharedOptions struct { - UUID string `json:"uuid,omitempty"` - Select []string `json:"select"` - Filters []Filter `json:"filters"` - Limit int64 `json:"limit"` - Offset int64 `json:"offset"` - Order []string `json:"order"` - Include string `json:"include"` -} - type UpdateUUIDOptions struct { UUID string `json:"uuid"` NewUUID string `json:"new_uuid"` @@ -236,9 +235,10 @@ type API interface { GroupUpdate(ctx context.Context, options UpdateOptions) (Group, error) GroupGet(ctx context.Context, options GetOptions) (Group, error) GroupList(ctx context.Context, options ListOptions) (GroupList, error) - GroupContents(ctx context.Context, options ContentsOptions) (GroupList, error) - GroupShared(ctx context.Context, options SharedOptions) (GroupList, error) + GroupContents(ctx context.Context, options GroupContentsOptions) (ObjectList, error) + GroupShared(ctx context.Context, options ListOptions) (GroupList, error) GroupDelete(ctx context.Context, options DeleteOptions) (Group, error) + GroupTrash(ctx context.Context, options DeleteOptions) (Group, error) GroupUntrash(ctx context.Context, options UntrashOptions) (Group, error) SpecimenCreate(ctx context.Context, options CreateOptions) (Specimen, error) SpecimenUpdate(ctx context.Context, options UpdateOptions) (Specimen, error)