use uuid::Uuid; use crate::error::RepoResult; use crate::features::RepoService; use super::types::{ BranchPage, BranchView, CreateBranchOption, ListBranchQuery, MergeUpstreamRequest, MergeUpstreamResponse, RenameBranchOption, UpdateBranchOption, }; use super::usecase; impl RepoService { pub async fn list_branches( &self, actor: Uuid, repo_id: Uuid, q: ListBranchQuery, ) -> RepoResult { usecase::list_branches(self, actor, repo_id, q).await } pub async fn get_branch( &self, actor: Uuid, repo_id: Uuid, name: &str, ) -> RepoResult { usecase::get_branch(self, actor, repo_id, name).await } pub async fn create_branch( &self, actor: Uuid, repo_id: Uuid, input: CreateBranchOption, ) -> RepoResult { usecase::create_branch(self, actor, repo_id, input).await } pub async fn update_branch( &self, actor: Uuid, repo_id: Uuid, name: &str, input: UpdateBranchOption, ) -> RepoResult { usecase::update_branch(self, actor, repo_id, name, input).await } pub async fn delete_branch(&self, actor: Uuid, repo_id: Uuid, name: &str) -> RepoResult<()> { usecase::delete_branch(self, actor, repo_id, name).await } pub async fn rename_branch( &self, actor: Uuid, repo_id: Uuid, old_name: &str, input: RenameBranchOption, ) -> RepoResult { usecase::rename_branch(self, actor, repo_id, old_name, input).await } pub async fn merge_upstream( &self, actor: Uuid, repo_id: Uuid, input: MergeUpstreamRequest, ) -> RepoResult { usecase::merge_upstream(self, actor, repo_id, input).await } }