This is dangerous because you could loose information why something failed working. Just throw the exception from this method. Because the doRun will accept any exception thrown.