@Override public boolean equals(Object object) { if (!(object instanceof JcrNodeModel)) { return false; } if (this == object) { return true; } final JcrNodeModel nodeModel = (JcrNodeModel) object; return getItemModel().equals(nodeModel.getItemModel()); }
public void onEvent(Iterator<? extends IEvent<JcrNodeModel>> events) { EventCollection<JcrEvent> filtered = new EventCollection<JcrEvent>(); while (events.hasNext()) { JcrEvent jcrEvent = (JcrEvent) events.next(); Event event = jcrEvent.getEvent(); try { switch (event.getType()) { case 0: filtered.add(jcrEvent); break; case Event.PROPERTY_ADDED: case Event.PROPERTY_REMOVED: case Event.PROPERTY_CHANGED: String path = event.getPath(); JcrItemModel eventModel = new JcrItemModel(path, true); if (eventModel.equals(getItemModel())) { filtered.add(jcrEvent); } } } catch (RepositoryException ex) { log.error("Error filtering event", ex); } } if (filtered.size() > 0) { obContext.notifyObservers(filtered); } }