/* Ċ Ġ* Ġ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 . openapi . resources . ap ig w . v 4 Ċ Ċ import Ġcom . tencent . devops . common . api . pojo . Page Ċ import Ġcom . tencent . devops . common . api . pojo . Result Ċ import Ġcom . tencent . devops . common . client . Client Ċ import Ġcom . tencent . devops . common . pipeline . enums . Channel Code Ċ import Ġcom . tencent . devops . common . web . Rest Resource Ċ import Ġcom . tencent . devops . openapi . api . ap ig w . v 4 . Ap ig w Atom Resource V 4 Ċ import Ġcom . tencent . devops . store . api . atom . Service Market Atom Resource Ċ import Ġcom . tencent . devops . store . api . common . Service Store Statistic Resource Ċ import Ġcom . tencent . devops . store . pojo . atom . Atom Pipeline Ċ import Ġcom . tencent . devops . store . pojo . atom . Atom Version Ċ import Ġcom . tencent . devops . store . pojo . atom . Install Atom Req Ċ import Ġcom . tencent . devops . store . pojo . common . Store Statistic Ċ import Ġcom . tencent . devops . store . pojo . common . enums . Store TypeEnum Ċ import Ġorg . slf 4 j . LoggerFactory Ċ import Ġorg . springframework . beans . factory . annotation . Autowired Ċ Ċ @ Rest Resource Ċ class ĠAp ig w Atom Resource V 4 Impl Ġ@ Autowired Ġconstructor ( private Ġval Ġclient : ĠClient ) Ġ: ĊĠĠĠ ĠAp ig w Atom Resource V 4 Ġ{ ĊĠĠĠ Ġoverride Ġfun Ġget Atom By Code ( ĊĠĠĠĠĠĠĠ Ġapp Code : ĠString ?, ĊĠĠĠĠĠĠĠ Ġap ig w Type : ĠString ?, ĊĠĠĠĠĠĠĠ Ġatom Code : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString ĊĠĠĠ Ġ): ĠResult < Atom Version ?> Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . info (" get ĠAtom ĠBy ĠCode , Ġatom Code ($ atom Code ), userId ($ userId )") ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . get ( Service Market Atom Resource :: class ). get Atom By Code ( atom Code , ĠuserId ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Atom Statistic By Code ( ĊĠĠĠĠĠĠĠ Ġapp Code : ĠString ?, ĊĠĠĠĠĠĠĠ Ġap ig w Type : ĠString ?, ĊĠĠĠĠĠĠĠ Ġatom Code : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString ĊĠĠĠ Ġ): ĠResult < Store Statistic > Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . info (" get ĠAtom ĠStat istic ĠBy ĠCode , Ġatom Code ($ atom Code ), userId ($ userId )") ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . get ( Service Store Statistic Resource :: class ). get Statistic By Code ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstore Type Ġ= ĠStore TypeEnum . ATOM , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstore Code Ġ= Ġatom Code ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġget Atom P ipelines By Code ( ĊĠĠĠĠĠĠĠ Ġapp Code : ĠString ?, ĊĠĠĠĠĠĠĠ Ġap ig w Type : ĠString ?, ĊĠĠĠĠĠĠĠ Ġatom Code : ĠString , ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġpage : ĠInt ?, ĊĠĠĠĠĠĠĠ ĠpageSize : ĠInt ? ĊĠĠĠ Ġ): ĠResult < Page < Atom Pipeline >> Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . info (" get ĠAtom ĠP ipelines ĠBy ĠCode , Ġatom Code ($ atom Code ), userId ($ userId ), page ($ page ), pageSize ($ pageSize )") ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . get ( Service Market Atom Resource :: class ). get Atom P ipelines By Code ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġatom Code Ġ= Ġatom Code , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġusername Ġ= ĠuserId , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpage Ġ= Ġpage Ġ?: Ġ 1 , ĊĠĠĠĠĠĠĠĠĠĠĠ ĠpageSize Ġ= ĠpageSize Ġ?: Ġ 2 0 ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġinstall Atom ( ĊĠĠĠĠĠĠĠ Ġapp Code : ĠString ?, ĊĠĠĠĠĠĠĠ Ġap ig w Type : ĠString ?, ĊĠĠĠĠĠĠĠ ĠuserId : ĠString , ĊĠĠĠĠĠĠĠ Ġchannel Code : ĠChannel Code ?, ĊĠĠĠĠĠĠĠ Ġinstall Atom Req : ĠInstall Atom Req ĊĠĠĠ Ġ): ĠResult < Boolean > Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . info (" install ĠAtom : ĠuserId [$ userId ] Ġchannel Code [$ channel Code ] Ġinstall Atom Req [$ install Atom Req ]") ĊĠĠĠĠĠĠĠ Ġreturn Ġclient . get ( Service Market Atom Resource :: class ). install Atom ( userId , Ġchannel Code , Ġinstall Atom Req ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLoggerFactory . getLogger ( Ap ig w Atom Resource V 4 Impl :: class . java ) ĊĠĠĠ Ġ} Ċ } Ċ