blob: 00fdac1f99379ee8aa1e5dfee00de6bd4da9a4f1 [file] [log] [blame]
Umesh Krishnaswamy345ee992012-12-13 20:29:48 -08001/**
2* Copyright 2011, Big Switch Networks, Inc.
3* Originally created by David Erickson, Stanford University
4*
5* Licensed under the Apache License, Version 2.0 (the "License"); you may
6* not use this file except in compliance with the License. You may obtain
7* a copy of the License at
8*
9* http://www.apache.org/licenses/LICENSE-2.0
10*
11* Unless required by applicable law or agreed to in writing, software
12* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14* License for the specific language governing permissions and limitations
15* under the License.
16**/
17
18package net.floodlightcontroller.core;
19
20import org.openflow.protocol.OFMessage;
21import org.openflow.protocol.OFType;
22
23/**
24 *
25 *
26 * @author David Erickson (daviderickson@cs.stanford.edu)
27 */
28public interface IOFMessageListener extends IListener<OFType> {
29 /**
30 * This is the method Floodlight uses to call listeners with OpenFlow messages
31 * @param sw the OpenFlow switch that sent this message
32 * @param msg the message
33 * @param cntx a Floodlight message context object you can use to pass
34 * information between listeners
35 * @return the command to continue or stop the execution
36 */
37 public Command receive(IOFSwitch sw, OFMessage msg, FloodlightContext cntx);
38}