| /* |
| * Copyright (c) 2004 World Wide Web Consortium, (Massachusetts Institute of |
| * Technology, Institut National de Recherche en Informatique et en |
| * Automatique, Keio University). All Rights Reserved. This program is |
| * distributed under the W3C's Software Intellectual Property License. This |
| * program is distributed in the hope that it will be useful, but WITHOUT ANY |
| * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
| * FOR A PARTICULAR PURPOSE. See W3C License |
| * http://www.w3.org/Consortium/Legal/ for more details. |
| */ |
| |
| package org.w3c.domts; |
| |
| import java.util.ArrayList; |
| import java.util.List; |
| |
| import org.w3c.dom.Node; |
| import org.w3c.dom.UserDataHandler; |
| |
| /** |
| * This is a utility implementation of UserDataHandler that captures all |
| * notifications |
| */ |
| public class UserDataMonitor |
| implements UserDataHandler { |
| private final List notifications = new ArrayList(); |
| |
| /** |
| * Public constructor |
| * |
| */ |
| public UserDataMonitor() { |
| } |
| |
| /** |
| * Implementation of UserDataHandler.handle. Creates a UserDataNotification |
| * for later testing |
| * |
| * @param operation |
| * See org.w3c.dom.UserDataHandler |
| * @param key |
| * See org.w3c.dom.UserDataHandler |
| * @param data |
| * See org.w3c.dom.UserDataHandler |
| * @param src |
| * See org.w3c.dom.UserDataHandler |
| * @param dst |
| * See org.w3c.dom.UserDataHandler |
| */ |
| public void handle( |
| short operation, |
| String key, |
| Object data, |
| Node src, |
| Node dst) { |
| notifications.add( |
| new UserDataNotification(operation, key, data, src, dst)); |
| } |
| |
| /** |
| * Gets list of notifications |
| * |
| * @return List of notifications, may not be null. |
| */ |
| public final List getAllNotifications() { |
| return new ArrayList(notifications); |
| } |
| |
| } |