public void processNotification(Signal notification) { setChanged(); try { notification.acquire(); notifyObservers(notification); } catch (SignalAcquireException e) { logger.log(Level.SEVERE, "Signal lock could not be acquired"); } finally { try { notification.release(); } catch (SignalReleaseException e) { logger.log(Level.SEVERE, "Signal lock could not be release"); } } }