3 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
5 * This program and the accompanying materials are made available under the
6 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 * and is available at http://www.eclipse.org/legal/epl-v10.html
10 package org.opendaylight.controller.sal.topology;
14 import org.opendaylight.controller.sal.core.Edge;
15 import org.opendaylight.controller.sal.core.Property;
16 import org.opendaylight.controller.sal.core.UpdateType;
19 * @file IListenTopoUpdates.java
21 * @brief Topology notifications provided by SAL toward the application
23 * For example an application that wants to keep up to date with the
24 * updates coming from SAL it will register in the OSGi service
25 * registry this interface (on a per-container base) and SAL will call it
26 * providing the update
30 * Topology notifications provided by SAL toward the application
33 public interface IListenTopoUpdates {
35 * Called to update on Edge in the topology graph
37 * @param e Edge being updated
38 * @param type Type of update
39 * @param props Properties of the edge, like BandWidth and/or Latency etc.
41 public void edgeUpdate(Edge e, UpdateType type, Set<Property> props);
44 * Called when an Edge utilization is above the safety threshold
45 * configured on the controller
47 * @param edge The edge which bandwidth usage is above the safety level
49 public void edgeOverUtilized(Edge edge);
52 * Called when the Edge utilization is back to normal, below the safety
53 * threshold level configured on the controller
57 public void edgeUtilBackToNormal(Edge edge);