package Ġcom . atlassian . performance . tools . report . api Ċ Ċ import Ġcom . atlassian . performance . tools . jira actions . api .* Ċ import Ġcom . atlassian . performance . tools . report . api . result . Ed ible Result Ċ import Ġcom . atlassian . performance . tools . report . api . result . Raw Co hort Result Ċ import Ġcom . atlassian . performance . tools . report . api . result . Stats Ċ import Ġcom . atlassian . performance . tools . report . chart . Mean Latency Chart Ċ import Ġcom . atlassian . performance . tools . workspace . api . Root Workspace Ċ import Ġcom . atlassian . performance . tools . workspace . api . Task Workspace Ċ import Ġorg . apache . logging . log 4 j . Log Manager Ċ Ċ /** Ċ Ġ* ĠReports Ġon Ġco hort Ġresults Ġfrom Ġall ĠJ PT Ġtasks Ġavailable Ġin Ġthe Ġ[ workspace ]. Ċ Ġ*/ Ċ class ĠH istorical Co hort s Reporter ( ĊĠĠĠ Ġprivate Ġval Ġworkspace : ĠRoot Workspace Ċ ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġlogger Ġ= ĠLog Manager . getLogger ( this :: class . java ) ĊĊĠĠĠ Ġprivate Ġval Ġaction Types Ġ= ĠlistOf ( ĊĠĠĠĠĠĠĠ ĠVIEW _ BOARD , ĊĠĠĠĠĠĠĠ ĠVIEW _ ISSUE , ĊĠĠĠĠĠĠĠ ĠVIEW _ DASH BOARD , ĊĠĠĠĠĠĠĠ ĠSEARCH _ WITH _ J QL , ĊĠĠĠĠĠĠĠ ĠADD _ COMMENT _ SUBMIT , ĊĠĠĠĠĠĠĠ ĠCREATE _ ISSUE _ SUBMIT , ĊĠĠĠĠĠĠĠ ĠEDIT _ ISSUE _ SUBMIT , ĊĠĠĠĠĠĠĠ ĠPROJECT _ SUM MARY , ĊĠĠĠĠĠĠĠ ĠB ROW SE _ PROJECT S , ĊĠĠĠĠĠĠĠ ĠB ROW SE _ BO AR DS ĊĠĠĠ Ġ) ĊĊĠĠĠ Ġfun Ġdump () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġstats Ġ= Ġget Stats () ĊĠĠĠĠĠĠĠ Ġval Ġlabels Ġ= Ġaction Types . map Ġ{ Ġit . label Ġ} ĊĠĠĠĠĠĠĠ Ġval Ġreport Ġ= Ġworkspace . directory . resolve (" results . csv ") ĊĠĠĠĠĠĠĠ ĠCo hort Stats Summary ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoutput Ġ= Ġreport . to File (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlabels Ġ= Ġlabels ĊĠĠĠĠĠĠĠ Ġ). report ( stats ) ĊĊĠĠĠĠĠĠĠ Ġval Ġchart Ġ= Ġworkspace . directory . resolve (" mean - latency - chart . html ") ĊĠĠĠĠĠĠĠ ĠMean Latency Chart (). plot ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġstats Ġ= Ġstats , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġlabels Ġ= Ġlabels , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġoutput Ġ= Ġchart . to File () ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġget Stats (): ĠCollection < Stats > Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġworkspace ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. list Tasks () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map NotNull Ġ{ Ġextract Results ( it ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. map Ġ{ Ġit . stats Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġextract Results ( ĊĠĠĠĠĠĠĠ Ġtask : ĠTask Workspace ĊĠĠĠ Ġ): ĠEd ible Result ? Ġ= Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġed ible Result Ġ= ĠRaw Co hort Result . Factory (). full Result ( ĊĠĠĠĠĠĠĠĠĠĠĠ Ġco hort Ġ= Ġtask . directory . fileName . toString (), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġresults Ġ= Ġtask . directory ĊĠĠĠĠĠĠĠ Ġ). prepare For J udge ment ( Full Timeline ()) ĊĠĠĠĠĠĠĠ Ġlogger . info (" Found Ġprevious Ġresults Ġin Ġ${ task . directory }") ĊĠĠĠĠĠĠĠ Ġed ible Result ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġlogger . debug ("${ task . directory } Ġhas Ġno Ġresults ", Ġe ) ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ }