Closed jlnknz closed 8 years ago
When we do indeed capture RunTimeException with FocusInternalErrorException, we keep the exception as is and pass it to the new FocusInternalErrorException constructor.
These cases denote that the program cannot continue as-is because something mandatory is missing, and we then crash. We then transform a checked exception into our non-checked FocusInternalErrorException exception.
We never catch FocusInternalErrorException for doing error handling and remediation.
For example we sometimes do
Catch them directly from the caller. It gives us more control on error reporting.