public synchronized void lifeCycleStateChanged(LifeCycleTransition transition) { if (!disposed) { LifeCycleState state = transition.getCurrentState(); if (transition.equals(LifeCycleTransition.LOADED_DORMANT)) { disposed = true; disposeLifeCycleClient(); if (getParent() != null) swapProxy(); // getParent().refreshChildren(); } else if (state.equals(LifeCycleState.ABSENT)) { refreshVisual(); } else if (transition.equals(LifeCycleTransition.DORMANT_LOADED)) { if (getParent() != null) getParent().refreshChildren(); } else { updateVisual(); } } }