pub trait LocalAsyncVersioningService<I: Stream<Item = Result<Bytes, Error>>> {
Show 18 methods
// Required methods
fn create_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &CreateBranchRequest,
) -> impl Future<Output = Result<Branch, Error>>;
fn create_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &CreateTagRequest,
) -> impl Future<Output = Result<Tag, Error>>;
fn get_commit(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
commit_id: &CommitId,
) -> impl Future<Output = Result<Commit, Error>>;
fn batch_get_commits(
&self,
auth_: &BearerToken,
resource_and_commit_ids: &BTreeSet<ResourceAndCommitId>,
) -> impl Future<Output = Result<BTreeSet<Commit>, Error>>;
fn get_commit_by_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<Commit, Error>>;
fn get_commit_by_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = Result<Commit, Error>>;
fn get_least_common_ancestor(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &GetLeastCommonAncestorRequest,
) -> impl Future<Output = Result<CommitId, Error>>;
fn get_commit_history(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
commit_id: &CommitId,
page_size: Option<i32>,
next_page_token: Option<&str>,
) -> impl Future<Output = Result<CommitHistory, Error>>;
fn persist_commits(
&self,
auth_: &BearerToken,
request: &BTreeSet<ResourceAndCommitId>,
) -> impl Future<Output = Result<(), Error>>;
fn get_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<Branch, Error>>;
fn get_branches(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
) -> impl Future<Output = Result<Vec<Branch>, Error>>;
fn batch_get_branches(
&self,
auth_: &BearerToken,
resource_and_branches: &BTreeSet<ResourceAndBranchName>,
) -> impl Future<Output = Result<BTreeSet<Branch>, Error>>;
fn get_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = Result<Tag, Error>>;
fn batch_get_tags(
&self,
auth_: &BearerToken,
resource_and_commits: &BTreeSet<ResourceAndCommitId>,
) -> impl Future<Output = Result<BTreeSet<Tag>, Error>>;
fn get_tags_by_resource(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
) -> impl Future<Output = Result<Vec<Tag>, Error>>;
fn delete_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<(), Error>>;
fn delete_branches(
&self,
auth_: &BearerToken,
resource_and_branches: &BTreeSet<ResourceAndBranchName>,
) -> impl Future<Output = Result<(), Error>>;
fn delete_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = 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§
Sourcefn create_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &CreateBranchRequest,
) -> impl Future<Output = Result<Branch, Error>>
fn create_branch( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, request: &CreateBranchRequest, ) -> impl Future<Output = 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.
Sourcefn create_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &CreateTagRequest,
) -> impl Future<Output = Result<Tag, Error>>
fn create_tag( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, request: &CreateTagRequest, ) -> impl Future<Output = 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.
Sourcefn get_commit(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
commit_id: &CommitId,
) -> impl Future<Output = Result<Commit, Error>>
fn get_commit( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, commit_id: &CommitId, ) -> impl Future<Output = Result<Commit, Error>>
Throws if the commit doesn’t exist.
Sourcefn batch_get_commits(
&self,
auth_: &BearerToken,
resource_and_commit_ids: &BTreeSet<ResourceAndCommitId>,
) -> impl Future<Output = Result<BTreeSet<Commit>, Error>>
fn batch_get_commits( &self, auth_: &BearerToken, resource_and_commit_ids: &BTreeSet<ResourceAndCommitId>, ) -> impl Future<Output = Result<BTreeSet<Commit>, Error>>
Filters out resources that are not authorized.
Sourcefn get_commit_by_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<Commit, Error>>
fn get_commit_by_branch( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, branch_name: &BranchName, ) -> impl Future<Output = Result<Commit, Error>>
Returns the commit pointed to by the branch. Throws if the branch doesn’t exist.
Sourcefn get_commit_by_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = Result<Commit, Error>>
fn get_commit_by_tag( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, tag_name: &TagName, ) -> impl Future<Output = Result<Commit, Error>>
Returns the commit pointed to by the tag. Throws if the tag doesn’t exist.
Sourcefn get_least_common_ancestor(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
request: &GetLeastCommonAncestorRequest,
) -> impl Future<Output = Result<CommitId, Error>>
fn get_least_common_ancestor( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, request: &GetLeastCommonAncestorRequest, ) -> impl Future<Output = Result<CommitId, Error>>
Returns the least common ancestor of the two commits. Throws if either commit doesn’t exist.
Sourcefn get_commit_history(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
commit_id: &CommitId,
page_size: Option<i32>,
next_page_token: Option<&str>,
) -> impl Future<Output = Result<CommitHistory, Error>>
fn get_commit_history( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, commit_id: &CommitId, page_size: Option<i32>, next_page_token: Option<&str>, ) -> impl Future<Output = Result<CommitHistory, Error>>
Returns the commit history sorted by creation time descending. Excludes working state commits. Throws if the commit doesn’t exist.
Sourcefn persist_commits(
&self,
auth_: &BearerToken,
request: &BTreeSet<ResourceAndCommitId>,
) -> impl Future<Output = Result<(), Error>>
fn persist_commits( &self, auth_: &BearerToken, request: &BTreeSet<ResourceAndCommitId>, ) -> impl Future<Output = 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).
Sourcefn get_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<Branch, Error>>
fn get_branch( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, branch_name: &BranchName, ) -> impl Future<Output = Result<Branch, Error>>
Throws if the branch doesn’t exist.
Sourcefn get_branches(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
) -> impl Future<Output = Result<Vec<Branch>, Error>>
fn get_branches( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, ) -> impl Future<Output = Result<Vec<Branch>, Error>>
Returns all branches for the resource in order of most recently updated.
Sourcefn batch_get_branches(
&self,
auth_: &BearerToken,
resource_and_branches: &BTreeSet<ResourceAndBranchName>,
) -> impl Future<Output = Result<BTreeSet<Branch>, Error>>
fn batch_get_branches( &self, auth_: &BearerToken, resource_and_branches: &BTreeSet<ResourceAndBranchName>, ) -> impl Future<Output = Result<BTreeSet<Branch>, Error>>
Omits branches that are not authorized.
Sourcefn get_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = Result<Tag, Error>>
fn get_tag( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, tag_name: &TagName, ) -> impl Future<Output = Result<Tag, Error>>
Throws if the tag doesn’t exist.
Omits tags that are not authorized.
Returns all tags for the resource in order of most recently created.
Sourcefn delete_branch(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
branch_name: &BranchName,
) -> impl Future<Output = Result<(), Error>>
fn delete_branch( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, branch_name: &BranchName, ) -> impl Future<Output = Result<(), Error>>
Deletes the branch pointer. Throws if the branch doesn’t exist. Throws if you attempt to delete the “main” branch.
Sourcefn delete_branches(
&self,
auth_: &BearerToken,
resource_and_branches: &BTreeSet<ResourceAndBranchName>,
) -> impl Future<Output = Result<(), Error>>
fn delete_branches( &self, auth_: &BearerToken, resource_and_branches: &BTreeSet<ResourceAndBranchName>, ) -> impl Future<Output = 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”.
Sourcefn delete_tag(
&self,
auth_: &BearerToken,
resource_rid: &ResourceIdentifier,
tag_name: &TagName,
) -> impl Future<Output = Result<(), Error>>
fn delete_tag( &self, auth_: &BearerToken, resource_rid: &ResourceIdentifier, tag_name: &TagName, ) -> impl Future<Output = Result<(), Error>>
Deletes the tag pointer. Throws if the tag doesn’t exist.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".