Trait VersioningService

Source
pub trait VersioningService {
Show 18 methods // Required methods fn create_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: CreateBranchRequest, ) -> Result<Branch, Error>; fn create_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: CreateTagRequest, ) -> Result<Tag, Error>; fn get_commit( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, commit_id: CommitId, ) -> Result<Commit, Error>; fn batch_get_commits( &self, auth_: BearerToken, resource_and_commit_ids: BTreeSet<ResourceAndCommitId>, ) -> Result<BTreeSet<Commit>, Error>; fn get_commit_by_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<Commit, Error>; fn get_commit_by_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<Commit, Error>; fn get_least_common_ancestor( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: GetLeastCommonAncestorRequest, ) -> Result<CommitId, Error>; fn get_commit_history( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, commit_id: CommitId, page_size: Option<i32>, next_page_token: Option<Token>, ) -> Result<CommitHistory, Error>; fn persist_commits( &self, auth_: BearerToken, request: BTreeSet<ResourceAndCommitId>, ) -> Result<(), Error>; fn get_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<Branch, Error>; fn get_branches( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, ) -> Result<Vec<Branch>, Error>; fn batch_get_branches( &self, auth_: BearerToken, resource_and_branches: BTreeSet<ResourceAndBranchName>, ) -> Result<BTreeSet<Branch>, Error>; fn get_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<Tag, Error>; fn batch_get_tags( &self, auth_: BearerToken, resource_and_commits: BTreeSet<ResourceAndCommitId>, ) -> Result<BTreeSet<Tag>, Error>; fn get_tags_by_resource( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, ) -> Result<Vec<Tag>, Error>; fn delete_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<(), Error>; fn delete_branches( &self, auth_: BearerToken, resource_and_branches: BTreeSet<ResourceAndBranchName>, ) -> Result<(), Error>; fn delete_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<(), Error>;
}
Expand description

This is the external-facing portion of VersioningService which gives clients access to functionality that doesn’t create new commits. The creation of new commits should be done via the resource-specific services.

Required Methods§

Source

fn create_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: CreateBranchRequest, ) -> Result<Branch, Error>

Creates a mutable pointer to the provided commit. “Saves”/“commits” can be performed on this pointer. Throws if the name is already used as a commit pointer for this resource. Throws if the provided commit doesn’t exist.

Source

fn create_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: CreateTagRequest, ) -> Result<Tag, Error>

Creates an immutable pointer to the provided commit. Throws if the name is already used as a commit pointer for this resource. Throws if the provided commit doesn’t exist.

Source

fn get_commit( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, commit_id: CommitId, ) -> Result<Commit, Error>

Throws if the commit doesn’t exist.

Source

fn batch_get_commits( &self, auth_: BearerToken, resource_and_commit_ids: BTreeSet<ResourceAndCommitId>, ) -> Result<BTreeSet<Commit>, Error>

Filters out resources that are not authorized.

Source

fn get_commit_by_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<Commit, Error>

Returns the commit pointed to by the branch. Throws if the branch doesn’t exist.

Source

fn get_commit_by_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<Commit, Error>

Returns the commit pointed to by the tag. Throws if the tag doesn’t exist.

Source

fn get_least_common_ancestor( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, request: GetLeastCommonAncestorRequest, ) -> Result<CommitId, Error>

Returns the least common ancestor of the two commits. Throws if either commit doesn’t exist.

Source

fn get_commit_history( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, commit_id: CommitId, page_size: Option<i32>, next_page_token: Option<Token>, ) -> Result<CommitHistory, Error>

Returns the commit history sorted by creation time descending. Excludes working state commits. Throws if the commit doesn’t exist.

Source

fn persist_commits( &self, auth_: BearerToken, request: BTreeSet<ResourceAndCommitId>, ) -> Result<(), Error>

Persists the commits so that they are not compacted. This operation is atomic - either all commits are persisted or none are (in the case of an error).

Source

fn get_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<Branch, Error>

Throws if the branch doesn’t exist.

Source

fn get_branches( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, ) -> Result<Vec<Branch>, Error>

Returns all branches for the resource in order of most recently updated.

Source

fn batch_get_branches( &self, auth_: BearerToken, resource_and_branches: BTreeSet<ResourceAndBranchName>, ) -> Result<BTreeSet<Branch>, Error>

Omits branches that are not authorized.

Source

fn get_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<Tag, Error>

Throws if the tag doesn’t exist.

Source

fn batch_get_tags( &self, auth_: BearerToken, resource_and_commits: BTreeSet<ResourceAndCommitId>, ) -> Result<BTreeSet<Tag>, Error>

Omits tags that are not authorized.

Source

fn get_tags_by_resource( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, ) -> Result<Vec<Tag>, Error>

Returns all tags for the resource in order of most recently created.

Source

fn delete_branch( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, branch_name: BranchName, ) -> Result<(), Error>

Deletes the branch pointer. Throws if the branch doesn’t exist. Throws if you attempt to delete the “main” branch.

Source

fn delete_branches( &self, auth_: BearerToken, resource_and_branches: BTreeSet<ResourceAndBranchName>, ) -> Result<(), Error>

Deletes the branch pointers. Throws if any resource or branch is non-existent or unauthorized. Throws if any attempt is made to delete “main”.

Source

fn delete_tag( &self, auth_: BearerToken, resource_rid: ResourceIdentifier, tag_name: TagName, ) -> Result<(), Error>

Deletes the tag pointer. Throws if the tag doesn’t exist.

Implementors§