blob: e8a8d7a430b64e91b7444e176f680f2e4499fd95 [file] [log] [blame]
Jonathan Hart0961fe82014-04-03 09:56:25 -07001package net.onrc.onos.apps.forwarding;
Jonathan Hart5e448782013-12-10 12:36:35 -08002
Pavlin Radoslavov7208e9a2013-12-11 14:31:07 -08003import java.util.Collection;
4
Jonathan Hart5e448782013-12-10 12:36:35 -08005import net.floodlightcontroller.core.module.IFloodlightService;
Jonathan Hart23701d12014-04-03 10:45:48 -07006import net.onrc.onos.core.util.FlowPath;
Jonathan Hart5e448782013-12-10 12:36:35 -08007
8/**
9 * Temporary interface that allows the Forwarding module to be
Pavlin Radoslavova3818db2014-03-20 19:26:08 -070010 * notified when a flow has been installed.
Ray Milkey269ffb92014-04-03 14:43:30 -070011 * <p/>
Jonathan Hart5e448782013-12-10 12:36:35 -080012 * This should be refactored to a listener framework in the future.
Jonathan Hart5e448782013-12-10 12:36:35 -080013 */
14public interface IForwardingService extends IFloodlightService {
Ray Milkey269ffb92014-04-03 14:43:30 -070015 /**
16 * Notify the Forwarding module that a collection of flows has been
17 * installed in the network.
18 *
19 * @param installedFlowPaths the collection of FlowPaths that have
20 * been installed in the network.
21 */
22 public void flowsInstalled(Collection<FlowPath> installedFlowPaths);
23
24 /**
25 * Notify the Forwarding module that a flow has expired and been
26 * removed from the network.
27 *
28 * @param removedFlowPath The FlowPath that was removed
29 */
30 public void flowRemoved(FlowPath removedFlowPath);
Jonathan Hart5e448782013-12-10 12:36:35 -080031}