X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/dfa982141164eecfb33234430b58a221a6dfb3cf..30db189f713285d03facc83ac8018942a89afa81:/sdk/go/arvados/api.go diff --git a/sdk/go/arvados/api.go b/sdk/go/arvados/api.go index ec44d6a5a1..772f8da971 100644 --- a/sdk/go/arvados/api.go +++ b/sdk/go/arvados/api.go @@ -4,6 +4,11 @@ package arvados +import ( + "context" + "encoding/json" +) + type APIEndpoint struct { Method string Path string @@ -12,6 +17,7 @@ type APIEndpoint struct { } var ( + EndpointConfigGet = APIEndpoint{"GET", "arvados/v1/config", ""} EndpointCollectionCreate = APIEndpoint{"POST", "arvados/v1/collections", "collection"} EndpointCollectionUpdate = APIEndpoint{"PATCH", "arvados/v1/collections/:uuid", "collection"} EndpointCollectionGet = APIEndpoint{"GET", "arvados/v1/collections/:uuid", ""} @@ -76,3 +82,29 @@ type UpdateOptions struct { type DeleteOptions struct { UUID string `json:"uuid"` } + +type API interface { + ConfigGet(ctx context.Context) (json.RawMessage, error) + CollectionCreate(ctx context.Context, options CreateOptions) (Collection, error) + CollectionUpdate(ctx context.Context, options UpdateOptions) (Collection, error) + CollectionGet(ctx context.Context, options GetOptions) (Collection, error) + CollectionList(ctx context.Context, options ListOptions) (CollectionList, error) + CollectionProvenance(ctx context.Context, options GetOptions) (map[string]interface{}, error) + CollectionUsedBy(ctx context.Context, options GetOptions) (map[string]interface{}, error) + CollectionDelete(ctx context.Context, options DeleteOptions) (Collection, error) + CollectionTrash(ctx context.Context, options DeleteOptions) (Collection, error) + CollectionUntrash(ctx context.Context, options UntrashOptions) (Collection, error) + ContainerCreate(ctx context.Context, options CreateOptions) (Container, error) + ContainerUpdate(ctx context.Context, options UpdateOptions) (Container, error) + ContainerGet(ctx context.Context, options GetOptions) (Container, error) + ContainerList(ctx context.Context, options ListOptions) (ContainerList, error) + ContainerDelete(ctx context.Context, options DeleteOptions) (Container, error) + ContainerLock(ctx context.Context, options GetOptions) (Container, error) + ContainerUnlock(ctx context.Context, options GetOptions) (Container, error) + SpecimenCreate(ctx context.Context, options CreateOptions) (Specimen, error) + SpecimenUpdate(ctx context.Context, options UpdateOptions) (Specimen, error) + SpecimenGet(ctx context.Context, options GetOptions) (Specimen, error) + SpecimenList(ctx context.Context, options ListOptions) (SpecimenList, error) + SpecimenDelete(ctx context.Context, options DeleteOptions) (Specimen, error) + APIClientAuthorizationCurrent(ctx context.Context, options GetOptions) (APIClientAuthorization, error) +}