Hello,
Currently there is an issue in ActionRouter#getInstance()
It returns a partially initialized object so a fix would be to use a local
object and affect it :
public static ActionRouter getInstance() {
if (router == null) {
synchronized (LOCK) {
if(router == null) {
ActionRouter router = new ActionRouter();
router.populateCommandMap();
ActionRouter.router = router;
}
}
}
return router;
}
But due to CheckDirty using getInstance() in its constructor to register
itself as a PreAction to ExitCommand, it leads to a StackoverflowError.
Even without fixing this issue, it reveals an issue that could occur if a
Constructor of an AbstractCommand subclass uses ActionRouter.getInstance()
Regards
Philippe