@@ -60,10 +60,6 @@ public String getDescription(Locale locale) {
6060 @ Override
6161 protected void executeReport (Locale locale ) throws MavenReportException {
6262
63- GitLogReader gitLogReader = new GitLogReader ();
64- String projectBaseDir = project .getBasedir ().getPath ();
65- String parentOfGitDir = gitLogReader .getGitDir (project .getBasedir ()).getParentFile ().getPath ();
66-
6763 final String [] simpleTableHeadings = { "Class" ,
6864 "Priority" ,
6965 "Change Proneness Rank" ,
@@ -89,6 +85,9 @@ protected void executeReport(Locale locale) throws MavenReportException {
8985
9086 final String [] tableHeadings = showDetails ? detailedTableHeadings : simpleTableHeadings ;
9187
88+ GitLogReader gitLogReader = new GitLogReader ();
89+ String projectBaseDir = project .getBasedir ().getPath ();
90+ String parentOfGitDir = gitLogReader .getGitDir (project .getBasedir ()).getParentFile ().getPath ();
9291 log .info ("Project Base Dir: {} " , projectBaseDir );
9392 log .info ("Parent of Git Dir: {}" , parentOfGitDir );
9493
@@ -218,13 +217,13 @@ protected void executeReport(Locale locale) throws MavenReportException {
218217 log .info ("Done! View the report at target/site/{}" , filename );
219218 }
220219
221- private void drawTableHeaderCell (String cellText , Sink mainSink ) {
220+ void drawTableHeaderCell (String cellText , Sink mainSink ) {
222221 mainSink .tableHeaderCell ();
223222 mainSink .text (cellText );
224223 mainSink .tableHeaderCell_ ();
225224 }
226225
227- private void drawTableCell (String cellText , Sink mainSink ) {
226+ void drawTableCell (String cellText , Sink mainSink ) {
228227 mainSink .tableCell ();
229228 mainSink .text (cellText );
230229 mainSink .tableCell_ ();
@@ -233,7 +232,7 @@ private void drawTableCell(String cellText, Sink mainSink) {
233232 /**
234233 * @See https://maven.apache.org/doxia/developers/sink.html#How_to_inject_javascript_code_into_HTML
235234 */
236- private void generateChart (List <RankedDisharmony > rankedDisharmonies , Sink mainSink ) {
235+ void generateChart (List <RankedDisharmony > rankedDisharmonies , Sink mainSink ) {
237236 SinkEventAttributeSet googleChartImport = new SinkEventAttributeSet ();
238237 googleChartImport .addAttribute ( SinkEventAttributes .TYPE , "text/javascript" );
239238 googleChartImport .addAttribute ( SinkEventAttributes .SRC , "https://www.gstatic.com/charts/loader.js" );
@@ -242,6 +241,18 @@ private void generateChart(List<RankedDisharmony> rankedDisharmonies, Sink mainS
242241 mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_START }, googleChartImport );
243242 mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_END }, null );
244243
244+ writeGchartJs (rankedDisharmonies );
245+
246+ SinkEventAttributeSet javascript = new SinkEventAttributeSet ();
247+ javascript .addAttribute ( SinkEventAttributes .TYPE , "text/javascript" );
248+ javascript .addAttribute ( SinkEventAttributes .SRC , "./gchart.js" );
249+
250+ mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_START }, javascript );
251+ mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_END }, null );
252+ }
253+
254+ //TODO: Move to another class to allow use by Gradle plugin
255+ void writeGchartJs (List <RankedDisharmony > rankedDisharmonies ) {
245256 GraphDataGenerator graphDataGenerator = new GraphDataGenerator ();
246257 String scriptStart = graphDataGenerator .getScriptStart ();
247258 String bubbleChartData = graphDataGenerator .generateBubbleChartData (rankedDisharmonies );
@@ -268,12 +279,5 @@ private void generateChart(List<RankedDisharmony> rankedDisharmonies, Sink mainS
268279 } catch (IOException e ) {
269280 log .error ("Error writing chart script file" , e );
270281 }
271-
272- SinkEventAttributeSet javascript = new SinkEventAttributeSet ();
273- javascript .addAttribute ( SinkEventAttributes .TYPE , "text/javascript" );
274- javascript .addAttribute ( SinkEventAttributes .SRC , "./gchart.js" );
275-
276- mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_START }, javascript );
277- mainSink .unknown (script , new Object []{HtmlMarkup .TAG_TYPE_END }, null );
278282 }
279283}
0 commit comments