count down latch in a "finally" block
Move usage check into if (usages != null)
Add a LatchedActionListener which can be used to wait for delegate