protected void onManagedUpdate(final float pSecondElapsed) {
        if (null != this.mEntityModifiers) {
            final int modifierCount = this.mEntityModifiers.size();
            if (modifierCount > 0) {
                for (int i = modifierCount - 1; i >= 0; i--) {
                    final IModifier modifier = this.mEntityModifiers.get(i);
                    modifier.onUpdate(pSecondElapsed, this);
                    if (modifier.isFinished() && modifier.isAutoUnregisterWhenFinished()) {
                        this.mEntityModifiers.remove(i);
                    }
                }
            }
        }
        
        if (null != this.mUpdateHandlers) {
            this.mUpdateHandlers.onUpdate(pSecondElapsed);
        }

        if (null != this.mChildren) {
            final ArrayList<IEntity> entities = this.mChildren;
            final int entityCount = entities.size();
            for (int i = 0; i < entityCount; i++) {
                entities.get(i).onUpdate(pSecondElapsed);
            }
        }
    }