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);
        }

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