This is a great comment, doesn't need the TODO :).

Generally, InterruptedException is thrown when the current thread is (1) blocking and (2) gets an interrupt signal.  Interrupt signals are generally an indication that the thread should stop doing what it is doing.  So I think returning false is probably the best option.