package Ġcom . github . sa ip ras ad kr ish nam ur thy . sk 8 s Ċ Ċ import Ġorg . apache . maven . plugin . Abstract Mojo Ċ import Ġorg . apache . maven . plugin . Mojo ExecutionException Ċ import Ġorg . apache . maven . plugin . Mojo FailureException Ċ import Ġorg . apache . maven . plugins . annotations . Lifecycle Phase Ċ import Ġorg . apache . maven . plugins . annotations . Mojo Ċ import Ġorg . apache . maven . plugins . annotations . Parameter Ċ import Ġorg . apache . maven . plugins . annotations . Resolution Scope Ċ import Ġorg . apache . maven . project . Maven Project Ċ import Ġjava . nio . file . Paths Ċ Ċ /** Ċ Ġ* ĠAn Ġexample ĠMaven ĠMo jo Ġthat Ġgenerates ĠGIT Ġmanifest s . Ċ Ġ* Ġ@ author ĠS ai ĠK ris . Ċ Ġ*/ Ċ @ Mojo ( name Ġ= Ġ" generate - git - manifest s ", Ġdefault Phase Ġ= ĠLifecycle Phase . PRE PARE _ PACKAGE , Ġrequires Dependency Collection Ġ= ĠResolution Scope . COMPILE _ PLUS _ RUNTIME , Ġrequires Dependency Resolution Ġ= ĠResolution Scope . COMPILE _ PLUS _ RUNTIME ) Ċ class ĠGenerate Git Manifest s Mojo Ġ: ĠAbstract Mojo () Ġ{ ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" project ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġproject : ĠMaven Project ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" skip ") ĊĠĠĠ Ġprivate Ġvar Ġskip : ĠBoolean Ġ= Ġfalse ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" output Dir ", ĠdefaultValue Ġ= Ġ" target / manifest s / git ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġoutput Dir : ĠString ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" ticket Patterns ", ĠdefaultValue Ġ= Ġ" ZZ AABB CC XE W QX ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġticket Patterns : ĠString ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" max No Of Maven Versions For D iffs Dump ", ĠdefaultValue Ġ= Ġ" 0 ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmax No Of Maven Versions For D iffs Dump : ĠString ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" max Re visions ", ĠdefaultValue Ġ= Ġ" 1 0 0 ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġmax Re visions : ĠString ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" run On Branch Patterns ", ĠdefaultValue Ġ= Ġ" master ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġrun On Branch Patterns : ĠString ĊĊĠĠĠ Ġ@ Parameter ( property Ġ= Ġ" trans itive Deps Database Dump ", ĠdefaultValue Ġ= Ġ" false ") ĊĠĠĠ Ġprivate Ġlateinit Ġvar Ġtrans itive Deps Database Dump : ĠString ĊĊĠĠĠ Ġ@ Throws ( Mojo ExecutionException :: class , ĠMo jo FailureException :: class ) ĊĠĠĠ Ġoverride Ġfun Ġexecute () Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( skip ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlog . warn (" ĠGenerate Git Manifest s Mojo Ġdisabled Ġ") ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval ĠgroupId Ġ= Ġproject . groupId ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġartifact Id Ġ= Ġproject . artifactId ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġversion Ġ= Ġproject . version ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPaths . get ( output Dir , Ġartifact Id ). to File (). mkdir s () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog . info ( String . format (" ĠGenerating ĠGIT ĠManifest ĠFiles Ġfor : Ġ Ġ% s :% s :% s ", ĠgroupId , Ġartifact Id , Ġversion )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠGit Manifest s Generator . newInstance (). generate Manifest s ( Generate Git Manifest sRequest ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġticket Patterns Ġ= Ġticket Patterns . split ("," ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġoutput Dir Ġ= Ġoutput Dir , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġartifact Id Ġ= Ġproject . artifactId , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax Re visions Ġ= Ġmax Re visions . toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmax No Of Maven Versions For D iffs Dump Ġ= Ġmax No Of Maven Versions For D iffs Dump . toInt (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġexecute On Branches Ġ= Ġrun On Branch Patterns . split ("," ), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdependency Artifacts Ġ= Ġproject . artifacts . toList (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtrans itive Deps Database Dump Ġ= Ġtrans itive Deps Database Dump . to Boolean (), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġproject Ġ= Ġproject ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ)) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( ex : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġex . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlog . error ( ex ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġthrow ĠRuntimeException ( ex ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ }