/* Ċ Ġ* ĠCopyright Ġ 2 0 2 1 Ġi Mot ions ĠA / S Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ Ċ plugins Ġ{ ĊĠĠĠ Ġkotlin (" jvm ") Ġversion Ġ" 1 . 5 . 2 1 " ĊĠĠĠ Ġkotlin (" plugin . serialization ") Ġversion Ġ" 1 . 5 . 2 1 " ĊĠĠĠ Ġ` maven - publish ` ĊĠĠĠ Ġid (" io . gitlab . art urb os ch . de te kt "). version (" 1 . 1 7 . 0 ") Ċ } Ċ Ċ group Ġ= Ġ" io . im otions . bson 4 k " Ċ version Ġ= Ġ" 0 . 3 - RC 1 " Ċ Ċ val Ġk tl int Ġby Ġconfigurations . creating Ċ Ċ repositories Ġ{ ĊĠĠĠ Ġmaven Central () Ċ } Ċ Ċ dependencies Ġ{ ĊĠĠĠ Ġk tl int (" com . p interest : kt lint : 0 . 4 2 . 1 ") ĊĊĠĠĠ Ġimplementation (" org . jetbrains . kotlin x : kotlin x - serialization - core : 1 . 2 . 2 ") ĊĠĠĠ Ġimplementation (" org . mongodb : bson : 4 . 3 . 1 ") ĊĊĠĠĠ Ġtest Implementation (" org . jetbrains . kotlin x : kotlin x - serialization - json : 1 . 2 . 2 ") ĊĠĠĠ Ġtest Implementation (" io . kot est : kot est - runner - junit 5 : 4 . 6 . 1 ") ĊĠĠĠ Ġtest Implementation (" io . kot est : kot est - assertions - core : 4 . 6 . 1 ") ĊĠĠĠ Ġtest Implementation (" io . kot est : kot est - property : 4 . 6 . 1 ") Ċ } Ċ Ċ tasks . test Ġ{ ĊĠĠĠ Ġuse JUnit Platform () Ċ } Ċ Ċ java Ġ{ ĊĠĠĠ Ġsource Compatibility Ġ= ĠJava Version . VERSION _ 1 _ 8 ĊĠĠĠ Ġtarget Compatibility Ġ= ĠJava Version . VERSION _ 1 _ 8 Ċ } Ċ Ċ tasks . with Type < org . jetbrains . kotlin . gradle . tasks . Kotlin Compile >(). configure Each Ġ{ ĊĠĠĠ Ġkotlin Options Ġ{ ĊĠĠĠĠĠĠĠ Ġj vm Target Ġ= ĠJava Version . VERSION _ 1 _ 8 . toString () ĊĠĠĠ Ġ} Ċ } Ċ Ċ val Ġsources Jar Ġby Ġtasks . register ing ( Jar :: class ) Ġ{ ĊĠĠĠ Ġarchive Classifier . set (" sources ") ĊĠĠĠ Ġfrom ( source Sets . main . get (). all Source ) Ċ } Ċ Ċ publishing Ġ{ ĊĠĠĠ Ġrepositories Ġ{ ĊĠĠĠĠĠĠĠ Ġmaven Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ" GitHub Packages " ĊĠĠĠĠĠĠĠĠĠĠĠ Ġurl Ġ= Ġuri (" https :// maven . pkg . github . com / im otions / bson 4 k ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcredentials Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġusername Ġ= Ġproject . find Property (" g pr . user ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" USERNAME ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpassword Ġ= Ġproject . find Property (" g pr . key ") Ġas ĠString ? Ġ?: ĠSystem . getenv (" TOKEN ") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĠĠĠ Ġpublications Ġ{ ĊĠĠĠĠĠĠĠ Ġregister (" g pr ", ĠMaven Publication :: class ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfrom ( components [" java "]) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġartifact ( sources Jar . get ()) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ // ĠK tl int Ċ val Ġoutput Dir Ġ= Ġ"${ project . build Dir }/ reports / kt lint /" Ċ val Ġinput Files Ġ= Ġproject . file Tree ( map Of (" dir " Ġto Ġ" src ", Ġ" include " Ġto Ġ"** /*. kt ")) Ċ Ċ val Ġk tl int Check Ġby Ġtasks . register ing ( Java Exec :: class ) Ġ{ ĊĠĠĠ Ġinputs . files ( input Files ) ĊĠĠĠ Ġoutputs . dir ( output Dir ) ĊĊĠĠĠ Ġdescription Ġ= Ġ" Check ĠKotlin Ġcode Ġstyle ." ĊĠĠĠ Ġclasspath Ġ= Ġk tl int ĊĠĠĠ Ġmain Ġ= Ġ" com . p interest . kt lint . Main " ĊĠĠĠ Ġargs Ġ= ĠlistOf ("-- disabled _ rules = no - wildcard - imports ", Ġ" src /**/*. kt ") Ċ } Ċ Ċ val Ġk tl int Format Ġby Ġtasks . register ing ( Java Exec :: class ) Ġ{ ĊĠĠĠ Ġinputs . files ( input Files ) ĊĠĠĠ Ġoutputs . dir ( output Dir ) ĊĊĠĠĠ Ġdescription Ġ= Ġ" Fix ĠKotlin Ġcode Ġstyle Ġde viations ." ĊĠĠĠ Ġclasspath Ġ= Ġk tl int ĊĠĠĠ Ġmain Ġ= Ġ" com . p interest . kt lint . Main " ĊĠĠĠ Ġargs Ġ= ĠlistOf ("- F ", Ġ"-- disabled _ rules = no - wildcard - imports ", Ġ" src /**/*. kt ") Ċ } Ċ Ċ tasks . de te kt Ġ{ ĊĠĠĠ Ġdepends On (" kt lint Check ") Ċ } Ċ