Ericsson / CodeCheckerEclipsePlugin

This is an Eclipse plugin that shows C/C++ static analysis results found by Clang Static Analyzer and Clang Tidy
Eclipse Public License 1.0
32 stars 13 forks source link

Scheduler refactoration #143

Closed vodorok closed 5 years ago

vodorok commented 5 years ago

This PR is based on #140

Scheduler refactor

The required execution environment has been incremented to JavaSE-1.8, for to be able to use newer functions, like Nullable annotation.

The old serving thread concept got dropped in favor of Eclipse internally implemented Job system due to instability reasons.

New Job classes were added because of this:

These Jobs are schedulend in the this order.

A new method was introduced in CodeCheckerContext, to be able to easier refresh the user interface.

Because of this new task system, tracking progress of the CodeChecker analysis is possible and got implemented. Also opens up the possibility to be able to cancel the analysis process in the future.

For determining the initial task length the compilation_commands.json is counted for the number of "command": occurances. After this the analyze log is being parsed to determine current completion percentage.

Added proper Log4j exception stacktrace logging.

vodorok commented 5 years ago

Thanks @gyorb for the review, corrected the issues.