code: 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();
              }
          }
      }
docs: Removes all children from this tag.
  
  @author WFF