Refactor the component to avoid irrelevant redraw of the interface as
well as updates to components that haven't changed (due to Angular not
being able to properly analyse impact of a change).
Change-Id: If3356fb1bdb8b15263fc2100cc9015c3d545260e
Refactor and factorize a number of the JSON generator (html-report)
module. In addition to introducing a clearer and simpler interface, it
is also more memory and runtime efficient, as well as being more
maintainable.
Change-Id: I6729c3951ad6fa43cba6f73d963da35bab954d57
The GNAThub.Plugin class is no longer an abstract class and
GNAThub.Runner & GNAThub.Reporter are two new interfaces exposing
respectively run() and report(). Plugins now have tools execution
done in run() methods, and results collection done in report() methods
(when it make sense for the plugin, ie. coverage plugins only implement
the GNAThub.Reporter interface whereas eg. CodePeer plugin implements
both GNAThub.Runner and GNAThub.Reporter interfaces).
Change-Id: Ic702a98eb3bb02e7f7416b5ff3c998f9b20eaefc
TN: P720-035
The HTML report module output JSON files that are UTF-8 encoded. In
order for this serialization process to work, the input files need to be
decoded first.
For now, the implementation expects all input files to be UTF-8
otherwise the source code won't be available in the HTML report.
In the future GNAThub could expose a switch to allow the user to specify
the input encoding.
Change-Id: If9ae4bec08ca15301caab447665346e7da94d5f7
By default, use the first argument of Run() to get the list of extra
switches, and append them to the provided argv. For more complex cases
one can use one or more ToolArgsPlaceholder to insert those extra
switches at a specific position in the command line.
Change-Id: I2b46eb36ed298e9dae0995278074ff13afdd33b6
TN: PC20-033