-public class RequestManager implements NodeListener, HighLevelProgressListener {
-
- /** Logger. */
- private static final Logger logger = Logging.getLogger(RequestManager.class.getName());
-
- /** Request listeners. */
- private List<RequestListener> requestListeners = Collections.synchronizedList(new ArrayList<RequestListener>());
-
- /** The node manager. */
- private NodeManager nodeManager;
-
- /** Request lists for all nodes. */
- @SuppressWarnings("unused")
- private Map<Node, Map<String, Request>> nodeRequests = Collections.synchronizedMap(new HashMap<Node, Map<String, Request>>());
-
- //
- // EVENT MANAGEMENT
- //
-
- /**
- * Adds a request listener.
- *
- * @param requestListener
- * The request listener to add
- */
- public void addRequestListener(RequestListener requestListener) {
- requestListeners.add(requestListener);
- }
-
- /**
- * Removes a request listener.
- *
- * @param requestListener
- * The request listener to remove
- */
- public void removeRequestListener(RequestListener requestListener) {
- requestListeners.remove(requestListener);
- }
-
- /**
- * Notifies all listeners that a request was added.
- *
- * @param request
- * The request that was added
- */
- private void fireRequestAdded(Request request) {
- for (RequestListener requestListener: requestListeners) {
- requestListener.requestAdded(request);
- }
- }
-
- /**
- * Notifies all listeners that a request progressed.
- *
- * @param request
- * The request
- */
- private void fireRequestProgressed(Request request) {
- for (RequestListener requestListener: requestListeners) {
- requestListener.requestProgressed(request);
- }
- }
-
- // TODO - fireRequestRemoved
-
- //
- // ACCESSORS
- //
-
- /**
- * Sets the node manager to use.
- *
- * @param nodeManager
- * The node manager
- */
- public void setNodeManager(NodeManager nodeManager) {
- this.nodeManager = nodeManager;
- }