private static void onElementsAppended(MutationRecord record) { List<Node> nodes = record.addedNodes.asList(); List<ElementObserver> observed = new ArrayList<>(); for (ElementObserver elementObserver : attachObservers) { if (isNull(elementObserver.observedElement())) { observed.add(elementObserver); } else { if (nodes.contains(elementObserver.observedElement()) || isChildOfAddedNode(record, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(ATTACH_UID_KEY); observed.add(elementObserver); } } } attachObservers.removeAll(observed); }
private static void onElementsRemoved(MutationRecord record) { List<Node> nodes = record.removedNodes.asList(); List<ElementObserver> observed = new ArrayList<>(); for (ElementObserver elementObserver : detachObservers) { if (isNull(elementObserver.observedElement())) { observed.add(elementObserver); } else { if (nodes.contains(elementObserver.observedElement()) || isChildOfRemovedNode(record, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(DETACH_UID_KEY); observed.add(elementObserver); } } } detachObservers.removeAll(observed); }
private static void onElementsAppended(MutationRecord record) { List<ElementObserver> observed = new ArrayList<>(); List<HTMLElement> addedElements = stream(record.addedNodes) .filter(htmlElements()) .map(asHtmlElement()) .collect(toList()); for (ElementObserver elementObserver : attachObservers) { if (elementObserver.observedElement() == null) { observed.add(elementObserver); } else { if (addedElements.contains(elementObserver.observedElement()) || isChildOfObservedElement(addedElements, ATTACH_UID_KEY, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(ATTACH_UID_KEY); observed.add(elementObserver); } } } attachObservers.removeAll(observed); }
private static void onElementsAppended(MutationRecord record) { List<Node> nodes = record.addedNodes.asList(); List<ElementObserver> observed = new ArrayList<>(); for (ElementObserver elementObserver : attachObservers) { if (isNull(elementObserver.observedElement())) { observed.add(elementObserver); } else { if (nodes.contains(elementObserver.observedElement()) || isChildOfAddedNode(record, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(ATTACH_UID_KEY); observed.add(elementObserver); } } } attachObservers.removeAll(observed); }
private static void onElementsRemoved(MutationRecord record) { List<Node> nodes = record.removedNodes.asList(); List<ElementObserver> observed = new ArrayList<>(); for (ElementObserver elementObserver : detachObservers) { if (isNull(elementObserver.observedElement())) { observed.add(elementObserver); } else { if (nodes.contains(elementObserver.observedElement()) || isChildOfRemovedNode(record, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(DETACH_UID_KEY); observed.add(elementObserver); } } } detachObservers.removeAll(observed); }
private static void onElementsRemoved(MutationRecord record) { List<ElementObserver> observed = new ArrayList<>(); List<HTMLElement> removedElements = stream(record.removedNodes) .filter(htmlElements()) .map(asHtmlElement()) .collect(toList()); for (ElementObserver elementObserver : detachObservers) { if (elementObserver.observedElement() == null) { observed.add(elementObserver); } else { if (removedElements.contains(elementObserver.observedElement()) || isChildOfObservedElement(removedElements, DETACH_UID_KEY, elementObserver.attachId())) { elementObserver.callback().onObserved(record); elementObserver.observedElement().removeAttribute(DETACH_UID_KEY); observed.add(elementObserver); } } } detachObservers.removeAll(observed); }