/* Ċ Ġ* ĠTencent Ġis Ġplease d Ġto Ġsupport Ġthe Ġopen Ġsource Ġcommunity Ġby Ġmaking ĠB K - CI Ġ èĵĿ é² ¸ æĮģ ç»Ń éĽĨ æĪĲ å¹³åı° Ġavailable . Ċ Ġ* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 ĠTH L ĠA 2 9 ĠLimited , Ġa ĠTencent Ġcompany . Ġ ĠAll Ġrights Ġreserved . Ċ Ġ* Ċ Ġ* ĠB K - CI Ġ èĵĿ é² ¸ æĮģ ç»Ń éĽĨ æĪĲ å¹³åı° Ġis Ġlicensed Ġunder Ġthe ĠMIT Ġlicense . Ċ Ġ* Ċ Ġ* ĠA Ġcopy Ġof Ġthe ĠMIT ĠLicense Ġis Ġincluded Ġin Ġthis Ġfile . Ċ Ġ* Ċ Ġ* Ċ Ġ* ĠTerms Ġof Ġthe ĠMIT ĠLicense : Ċ Ġ* Ġ------------------------------------------------ --- Ċ Ġ* ĠPermission Ġis Ġhereby Ġgranted , Ġfree Ġof Ġcharge , Ġto Ġany Ġperson Ġobtaining Ġa Ġcopy Ġof Ġthis Ġsoftware Ġand Ġassociated Ċ Ġ* Ġdocumentation Ġfiles Ġ( the Ġ" Software "), Ġto Ġdeal Ġin Ġthe ĠSoftware Ġwithout Ġrestriction , Ġincluding Ġwithout Ġlimitation Ġthe Ċ Ġ* Ġrights Ġto Ġuse , Ġcopy , Ġmodify , Ġmerge , Ġpublish , Ġdistribute , Ġsublicense , Ġand / or Ġsell Ġcopies Ġof Ġthe ĠSoftware , Ġand Ġto Ċ Ġ* Ġpermit Ġpersons Ġto Ġwhom Ġthe ĠSoftware Ġis Ġfurnished Ġto Ġdo Ġso , Ġsubject Ġto Ġthe Ġfollowing Ġconditions : Ċ Ġ* Ċ Ġ* ĠThe Ġabove Ġcopyright Ġnotice Ġand Ġthis Ġpermission Ġnotice Ġshall Ġbe Ġincluded Ġin Ġall Ġcopies Ġor Ġsubstantial Ġportions Ġof Ċ Ġ* Ġthe ĠSoftware . Ċ Ġ* Ċ Ġ* ĠTHE ĠSOFTWARE ĠIS ĠPROVIDED Ġ" AS ĠIS ", ĠWITHOUT ĠWARRANTY ĠOF ĠANY ĠKIND , ĠEXPRESS ĠOR ĠIMPLIED , ĠINCLUDING ĠBUT ĠNOT Ċ Ġ* ĠLIMITED ĠTO ĠTHE ĠWARRANTIES ĠOF ĠMERCHANTABILITY , ĠFITNESS ĠFOR ĠA ĠPARTICULAR ĠPURPOSE ĠAND ĠNONINFRINGEMENT . ĠIN Ċ Ġ* ĠNO ĠEVENT ĠSHALL ĠTHE ĠAUTHORS ĠOR ĠCOPYRIGHT ĠHOLDERS ĠBE ĠLIABLE ĠFOR ĠANY ĠCLAIM , ĠDAMAGES ĠOR ĠOTHER ĠLIABILITY , Ċ Ġ* ĠWHETHER ĠIN ĠAN ĠACTION ĠOF ĠCONTRACT , ĠTORT ĠOR ĠOTHERWISE , ĠARISING ĠFROM , ĠOUT ĠOF ĠOR ĠIN ĠCONNECTION ĠWITH ĠTHE Ċ Ġ* ĠSOFTWARE ĠOR ĠTHE ĠUSE ĠOR ĠOTHER ĠDEALINGS ĠIN ĠTHE ĠSOFTWARE . Ċ Ġ*/ Ċ Ċ package Ġcom . tencent . devops . repository . resources . scm Ċ Ċ import Ġcom . tencent . devops . common . api . enums . Frontend TypeEnum Ċ import Ġcom . tencent . devops . common . api . pojo . Result Ċ import Ġcom . tencent . devops . common . web . Rest Resource Ċ import Ġcom . tencent . devops . repository . api . scm . Service Git Resource Ċ import Ġcom . tencent . devops . repository . pojo . enums . Git Code Branches Sort Ċ import Ġcom . tencent . devops . repository . pojo . enums . Git Code Projects Order Ċ import Ġcom . tencent . devops . repository . pojo . enums . Repo Auth Type Ċ import Ġcom . tencent . devops . repository . pojo . enums . TokenType Enum Ċ import Ġcom . tencent . devops . repository . pojo . enums . Visibility Level Enum Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Code FileInfo Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Code Project Info Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Create File Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Mr Change Info Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Mr Info Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Mr Review Info Ċ import Ġcom . tencent . devops . repository . pojo . git . Git Project Info Ċ import Ġcom . tencent . devops . repository . pojo . git . Git UserInfo Ċ import Ġcom . tencent . devops . repository . pojo . git . Update Git Project Info Ċ import Ġcom . tencent . devops . repository . pojo . oauth . Git Token Ċ import Ġcom . tencent . devops . repository . service . scm . IG it Service Ċ import Ġcom . tencent . devops . scm . code . git . api . Git Branch Ċ import Ġcom . tencent . devops . scm . code . git . api . Git Tag Ċ import Ġcom . tencent . devops . scm . enums . Git Access Level Enum Ċ import Ġcom . tencent . devops . scm . enums . Git Projects OrderBy Ċ import Ġcom . tencent . devops . scm . enums . Git Sort Asc Or Desc Ċ import Ġcom . tencent . devops . scm . pojo . Change FileInfo Ċ import Ġcom . tencent . devops . scm . pojo . Commit Ċ import Ġcom . tencent . devops . scm . pojo . Git Code Group Ċ import Ġcom . tencent . devops . scm . pojo . Git Commit Ċ import Ġcom . tencent . devops . scm . pojo . Git FileInfo Ċ import Ġcom . tencent . devops . scm . pojo . Git Member Ċ import Ġcom . tencent . devops . scm . pojo . Git Project Group Info Ċ import Ġcom . tencent . devops . scm . pojo . Git Repository Resp Ċ import Ġcom . tencent . devops . scm . pojo . Project Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ import Ġjavax . servlet . http . HttpServletResponse Ċ Ċ @ Rest Resource Ċ @ Suppress (" ALL ") Ċ class ĠService Git Resource Impl Ġ@ Autowired Ġconstructor ( ĊĠĠĠ Ġprivate Ġval Ġgit Service : ĠI Git Service Ċ ) Ġ: ĠService Git Resource Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġmove Project To Group ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġgroup Code : ĠString , ĊĠĠĠĠĠĠĠ Ġrepository Name : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git Project Info ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . move Project To Group ( group Code , Ġrepository Name , Ġtoken , Ġtoken Type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate Git Code Repository ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ ĠprojectName : ĠString , ĊĠĠĠĠĠĠĠ Ġupdate Git Project Info : ĠUpdate Git Project Info , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . update Git Project Info ( projectName , Ġupdate Git Project Info , Ġtoken , Ġtoken Type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project ( accessToken : ĠString , ĠuserId : ĠString ): ĠResult < List < Project >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . getProject ( accessToken , ĠuserId )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project List ( ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ?, ĊĠĠĠĠĠĠĠ Ġsearch : ĠString ?, ĊĠĠĠĠĠĠĠ ĠorderBy : ĠGit Projects OrderBy ?, ĊĠĠĠĠĠĠĠ Ġsort : ĠGit Sort Asc Or Desc ?, ĊĠĠĠĠĠĠĠ Ġowned : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġmin Access Level : ĠGit Access Level Enum ? ĊĠĠĠ Ġ): ĠResult < List < Project >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getProject List ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= ĠaccessToken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Ġ= Ġsearch , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠorderBy Ġ= ĠorderBy , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsort Ġ= Ġsort , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġowned Ġ= Ġowned , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmin Access Level Ġ= Ġmin Access Level ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Branch ( ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġrepository : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ?, ĊĠĠĠĠĠĠĠ Ġsearch : ĠString ? ĊĠĠĠ Ġ): ĠResult < List < Git Branch >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . get Branch ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= ĠaccessToken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepository Ġ= Ġrepository , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Ġ= Ġsearch ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Tag ( ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġrepository : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ? ĊĠĠĠ Ġ): ĠResult < List < Git Tag >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . getTag ( accessToken , ĠuserId , Ġrepository , Ġpage , ĠpageSize )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrefresh Token ( userId : ĠString , ĠaccessToken : ĠGit Token ): ĠResult < Git Token > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . refresh Token ( userId , ĠaccessToken )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Auth Url ( auth Param Json Str : ĠString ): ĠResult < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . get Auth Url ( auth Param Json Str )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetToken ( userId : ĠString , Ġcode : ĠString ): ĠResult < Git Token > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . getToken ( userId , Ġcode )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Redirect Url ( auth Param Json Str : ĠString ): ĠResult < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( git Service . get Redirect Url ( auth Param Json Str )) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git FileContent ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ ĠfilePath : ĠString , ĊĠĠĠĠĠĠĠ Ġauth Type : ĠRepo Auth Type ?, ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġref : ĠString ĊĠĠĠ Ġ): ĠResult < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . get Git FileContent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Url Ġ= Ġnull , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfilePath Ġ= ĠfilePath , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġauth Type Ġ= Ġauth Type , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġref Ġ= Ġref ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git lab FileContent ( ĊĠĠĠĠĠĠĠ Ġrepo Url : ĠString , ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ ĠfilePath : ĠString , ĊĠĠĠĠĠĠĠ Ġref : ĠString , ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString ĊĠĠĠ Ġ): ĠResult < String > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . get Git lab FileContent ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Url Ġ= Ġrepo Url , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠfilePath Ġ= ĠfilePath , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġref Ġ= Ġref , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= ĠaccessToken ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġcreate Git Code Repository ( ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġrepository Name : ĠString , ĊĠĠĠĠĠĠĠ Ġsample Project Path : ĠString , ĊĠĠĠĠĠĠĠ Ġnamespace Id : ĠInt ?, ĊĠĠĠĠĠĠĠ Ġvisibility Level : ĠVisibility Level Enum ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġfrontend Type : ĠFrontend TypeEnum ? ĊĠĠĠ Ġ): ĠResult < Git Repository Resp ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . create Git Code Repository ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrepository Name Ġ= Ġrepository Name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsample Project Path Ġ= Ġsample Project Path , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġnamespace Id Ġ= Ġnamespace Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvisibility Level Ġ= Ġvisibility Level , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrontend Type Ġ= Ġfrontend Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Git Project Member ( ĊĠĠĠĠĠĠĠ ĠuserId List : ĠList < String >, ĊĠĠĠĠĠĠĠ Ġrepository Space Name : ĠString , ĊĠĠĠĠĠĠĠ Ġgit Access Level : ĠGit Access Level Enum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . add Git Project Member ( userId List , Ġrepository Space Name , Ġgit Access Level , Ġtoken , Ġtoken Type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdelete Git Project Member ( ĊĠĠĠĠĠĠĠ ĠuserId List : ĠList < String >, ĊĠĠĠĠĠĠĠ Ġrepository Space Name : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . delete Git Project Member ( userId List , Ġrepository Space Name , Ġtoken , Ġtoken Type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Merge Request Info ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġmr Id : ĠLong , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġrepo Url : ĠString ? ĊĠĠĠ Ġ): ĠResult < Git Mr Info > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getM r Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmr Id Ġ= Ġmr Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Url Ġ= Ġrepo Url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġdownload Git Repo File ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġsha : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġresponse : ĠHttpServletResponse ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . download Git Repo File ( repo Name , Ġsha , Ġtoken , Ġtoken Type , Ġresponse ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Merge Request Review ers Info ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġmr Id : ĠLong , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġrepo Url : ĠString ? ĊĠĠĠ Ġ): ĠResult < Git Mr Review Info > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getM r Review Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmr Id Ġ= Ġmr Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Url Ġ= Ġrepo Url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Merge Request Change Info ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġmr Id : ĠLong , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġrepo Url : ĠString ? ĊĠĠĠ Ġ): ĠResult < Git Mr Change Info > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getM r Change Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmr Id Ġ= Ġmr Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Url Ġ= Ġrepo Url ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Repo Recent Commit Info ( ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġsha : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git Commit ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Repo Recent Commit Info ( repo Name Ġ= Ġrepo Name , Ġsha Ġ= Ġsha , Ġtoken Ġ= Ġtoken , Ġtoken Type Ġ= Ġtoken Type ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġun Lock Hook Lock ( ĊĠĠĠĠĠĠĠ ĠprojectId : ĠString ?, ĊĠĠĠĠĠĠĠ Ġrepo Name : ĠString , ĊĠĠĠĠĠĠĠ Ġmr Id : ĠLong ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġgit Service . unlock Hook Lock ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠprojectId Ġ= ĠprojectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġrepo Name , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmr Id Ġ= Ġmr Id ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( true ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project Group Info ( ĊĠĠĠĠĠĠĠ Ġid : ĠString , ĊĠĠĠĠĠĠĠ Ġinclude Sub groups : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git Project Group Info > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getProject Group Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġid , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġinclude Sub groups Ġ= Ġinclude Sub groups , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Change FileList ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġfrom : ĠString , ĊĠĠĠĠĠĠĠ Ġto : ĠString , ĊĠĠĠĠĠĠĠ Ġstraight : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġpage : ĠInt , ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ĊĠĠĠ Ġ): ĠResult < List < Change FileInfo >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . get Change FileList ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfrom Ġ= Ġfrom , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġto Ġ= Ġto , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġstraight Ġ= Ġstraight , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project Info ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString ĊĠĠĠ Ġ): ĠResult < Git Project Info ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Git Project Info ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project UserInfo ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git Member > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . get Repo Member Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġrepo Name Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project Groups List ( ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ?, ĊĠĠĠĠĠĠĠ Ġowned : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġmin Access Level : ĠGit Access Level Enum ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < List < Git Code Group >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getProject Group List ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= ĠaccessToken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġowned Ġ= Ġowned , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmin Access Level Ġ= Ġmin Access Level , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Members ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt , ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt , ĊĠĠĠĠĠĠĠ Ġsearch : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < List < Git Member >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Members ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Ġ= Ġsearch , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git UserId ( ĊĠĠĠĠĠĠĠ Ġr tx UserId : ĠString , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString ĊĠĠĠ Ġ): ĠResult < String ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Git UserId ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġr tx UserId Ġ= Ġr tx UserId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Project Members All ( ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt , ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt , ĊĠĠĠĠĠĠĠ Ġsearch : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString ĊĠĠĠ Ġ): ĠResult < List < Git Member >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . getProject Members All ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Ġ= Ġsearch , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git FileInfo ( ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ ĠfilePath : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġref : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git Code FileInfo > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Git FileInfo ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfilePath Ġ= ĠfilePath , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġref Ġ= Ġref , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġadd Mr Comment ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġmr Id : ĠLong , ĊĠĠĠĠĠĠĠ Ġmr Body : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ) Ġ{ ĊĠĠĠĠĠĠĠ Ġgit Service . add Mr Comment ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmr Id Ġ= Ġmr Id , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmr Body Ġ= Ġmr Body , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git File Tree ( ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠLong , ĊĠĠĠĠĠĠĠ Ġpath : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġref : ĠString ?, ĊĠĠĠĠĠĠĠ Ġrecursive : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < List < Git FileInfo >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Git File Tree ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpath Ġ= Ġpath , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġref Ġ= Ġref , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġrecursive Ġ= Ġrecursive , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Commits ( ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠLong , ĊĠĠĠĠĠĠĠ ĠfilePath : ĠString ?, ĊĠĠĠĠĠĠĠ Ġbranch : ĠString ?, ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġsince : ĠString ?, ĊĠĠĠĠĠĠĠ Ġuntil : ĠString ?, ĊĠĠĠĠĠĠĠ Ġpage : ĠInt , ĊĠĠĠĠĠĠĠ Ġper Page : ĠInt , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < List < Commit >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Commits ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠfilePath Ġ= ĠfilePath , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbranch Ġ= Ġbranch , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsince Ġ= Ġsince , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġuntil Ġ= Ġuntil , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġper Page Ġ= Ġper Page , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġgit Create File ( ĊĠĠĠĠĠĠĠ Ġgit ProjectId : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġgit Create File : ĠGit Create File , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . git Create File ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit ProjectId Ġ= Ġgit ProjectId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Ġ= Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Create File Ġ= Ġgit Create File , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type Ġ= Ġtoken Type ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun ĠgetUser Info By Token ( ĊĠĠĠĠĠĠĠ Ġtoken : ĠString , ĊĠĠĠĠĠĠĠ Ġtoken Type : ĠToken TypeEnum ĊĠĠĠ Ġ): ĠResult < Git UserInfo > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠResult ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġgit Service . getUser Info By Token ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtoken Type ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Git Code Project List ( ĊĠĠĠĠĠĠĠ ĠaccessToken : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ?, ĊĠĠĠĠĠĠĠ Ġsearch : ĠString ?, ĊĠĠĠĠĠĠĠ ĠorderBy : ĠGit Code Projects Order ?, ĊĠĠĠĠĠĠĠ Ġsort : ĠGit Code Branches Sort ?, ĊĠĠĠĠĠĠĠ Ġowned : ĠBoolean ?, ĊĠĠĠĠĠĠĠ Ġmin Access Level : ĠGit Access Level Enum ? ĊĠĠĠ Ġ): ĠResult < List < Git Code Project Info >> Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġgit Service . get Git Code Project List ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠaccessToken Ġ= ĠaccessToken , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsearch Ġ= Ġsearch , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠorderBy Ġ= ĠorderBy , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsort Ġ= Ġsort , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġowned Ġ= Ġowned , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġmin Access Level Ġ= Ġmin Access Level ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ