Schema 845

This should at a minimum restore the thread's interrupted status with Thread.currentThread().interrupt().  Throwing an exception is typically poor form, but it depends on the thread's context.  There is a chapter in Effective Java with specifics if you are interested.