public void removeAllChildren ( ) { boolean listenerInvoked = false ; final Lock lock = sharedObject . getLock ( ACCESS_OBJECT ) . writeLock ( ) ; try { lock . lock ( ) ; final AbstractHtml [ ] removedAbstractHtmls = children . toArray ( new AbstractHtml [ children . size ( ) ] ) ; children . clear ( ) ; initNewSharedObjectInAllNestedTagsAndSetSuperParentNull ( removedAbstractHtmls ) ; final ChildTagRemoveListener listener = sharedObject . getChildTagRemoveListener ( ACCESS_OBJECT ) ; if ( listener != null ) { listener . allChildrenRemoved ( new ChildTagRemoveListener . Event ( this , removedAbstractHtmls ) ) ; listenerInvoked = true ; } } finally { lock . unlock ( ) ; } if ( listenerInvoked ) { final PushQueue pushQueue = sharedObject . getPushQueue ( ACCESS_OBJECT ) ; if ( pushQueue != null ) { pushQueue . push ( ) ; } } }
Removes all children from this tag .