wffweb/src/main/java/com/webfirmframework/wffweb/tag/html/AbstractHtml.java
private void appendChildrenLockless(final AbstractHtml... children) {

        // any changes to this method should also be applied in
        // appendChildren(AbstractHtml... children)

        final Collection<ChildMovedEvent> movedOrAppended = new ArrayDeque<>(
                children.length);

        for (final AbstractHtml child : children) {
            final AbstractHtml previousParent = child.parent;

            addChild(child, false);

            final ChildMovedEvent event = new ChildMovedEvent(previousParent,
                    this, child);
            movedOrAppended.add(event);

        }

        final ChildTagAppendListener listener = sharedObject
                .getChildTagAppendListener(ACCESS_OBJECT);
        if (listener != null) {
            listener.childrendAppendedOrMoved(movedOrAppended);
        }

    }
private void appendChildrenLockless(final AbstractHtml... children) {

        // any changes to this method should also be applied in
        // appendChildren(AbstractHtml... children)

        final Collection<ChildMovedEvent> movedOrAppended = new ArrayDeque<>(
                children.length);

        for (final AbstractHtml child : children) {
            final AbstractHtml previousParent = child.parent;

            addChild(child, false);

            final ChildMovedEvent event = new ChildMovedEvent(previousParent,
                    this, child);
            movedOrAppended.add(event);

        }

        final ChildTagAppendListener listener = sharedObject
                .getChildTagAppendListener(ACCESS_OBJECT);
        if (listener != null) {
            listener.childrendAppendedOrMoved(movedOrAppended);
        }

    }
NB: lockless implementation of
{@code appendChildren(AbstractHtml... children)} <br>
adds the given children to the last position of the current children of
this object.

@param children
children to append in this object's existing
children.
@author WFF
@since 3.0.1