/** Ċ Ġ* ĠCopyright Ġ( c ) Ġ 2 0 2 0 ĠRichard ĠH aus wal d Ġ- Ġhttps :// quantum maid . de /. Ċ Ġ* Ċ Ġ* ĠLicensed Ġto Ġthe ĠApache ĠSoftware ĠFoundation Ġ( ASF ) Ġunder Ġone Ċ Ġ* Ġor Ġmore Ġcontributor Ġlicense Ġagreements . Ġ ĠSee Ġthe ĠNOTICE Ġfile Ċ Ġ* Ġdistributed Ġwith Ġthis Ġwork Ġfor Ġadditional Ġinformation Ċ Ġ* Ġregarding Ġcopyright Ġownership . Ġ ĠThe ĠASF Ġlicenses Ġthis Ġfile Ċ Ġ* Ġto Ġyou Ġ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 . Ċ Ġ*/ Ċ package Ġde . quantum maid . doc um aid . domain . markdown . tag Based . dependency Ċ Ċ import Ġde . quantum maid . doc um aid . domain . markdown . Remaining Markup FileContent Ċ import Ġde . quantum maid . doc um aid . domain . markdown . Trailing Markdown Code Section . Companion . extract Trailing Code Section Ċ import Ġde . quantum maid . doc um aid . domain . markdown . tag Based . matching . Trailing Markdown Match Result Ċ import Ġde . quantum maid . doc um aid . domain . markdown . tag Based . matching . Trailing Markdown Match Result . Companion . create Match For Trailing Markdown Ċ import Ġde . quantum maid . doc um aid . domain . markdown . tag Based . matching . Trailing Markdown Match Result . Companion . no Match For Trailing Code Section Ċ import Ġde . quantum maid . doc um aid . domain . maven . Artifact Id Ċ import Ġde . quantum maid . doc um aid . domain . maven . GroupId Ċ import Ġde . quantum maid . doc um aid . domain . maven . Scope Ċ import Ġde . quantum maid . doc um aid . domain . maven . Version Ċ Ċ class ĠDependency Markdown Ġprivate Ġconstructor ( ĊĠĠĠ Ġprivate Ġval ĠgroupId : ĠGroup Id , ĊĠĠĠ Ġprivate Ġval Ġartifact Id : ĠArtifact Id , ĊĠĠĠ Ġprivate Ġval Ġversion : ĠVersion , ĊĠĠĠ Ġprivate Ġval Ġscope : ĠScope ? Ċ ) Ġ{ ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġfun Ġcreate ( groupId : ĠGroup Id , Ġartifact Id : ĠArtifact Id , Ġversion : ĠVersion , Ġscope : ĠScope ?): ĠDependency Markdown Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĠDependency Markdown ( groupId , Ġartifact Id , Ġversion , Ġscope ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfun Ġstart sWith Dependency Markdown ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġremaining Markup FileContent : ĠRem aining Markup FileContent ĊĠĠĠĠĠĠĠ Ġ): ĠTr ailing Markdown Match Result Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcontent Ġ= Ġremaining Markup FileContent . content ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( content . trim Start (). startsWith (" ``` ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtrailing Code Section Ġ= Ġextract Trailing Code Section ( remaining Markup FileContent ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( trailing Code Section . code Content . contains ("< dependency > ")) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcomplete Length Ġ= Ġtrailing Code Section . complete Length ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġunt rim med Content Ġ= Ġtrailing Code Section . unt rim med Content ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcreate Match For Trailing Markdown ( complete Length , Ġunt rim med Content ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġno Match For Trailing Code Section () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġno Match For Trailing Code Section () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġmarkdown String (): ĠString Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġoptional Scope String Ġ= Ġif Ġ( scope Ġ!= Ġnull ) Ġ"\ n ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< scope >${ scope . value }</ scope >" Ġelse Ġ"" ĊĠĠĠĠĠĠĠ Ġreturn Ġ""" ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ``` xml ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ< dependency > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< groupId >${ groupId . value }</ groupId > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< artifactId >${ artifactId . value }</ artifactId > ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ< version >${ version . value }</ version >$ optional Scope String ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ</ dependency > ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ``` ĊĠĠĠĠĠĠĠ Ġ""" . trim Indent () ĊĠĠĠ Ġ} Ċ } Ċ