private void lock() { if (!locked) { locked = true; LockInteractionEvent.fire(this, true); } }
@Override public void unlock() { if (locked) { locked = false; LockInteractionEvent.fire(this, false); if (hasPendingNavigation()) { Command navigation = defferedNavigation; defferedNavigation = null; navigation.execute(); } } }