blob: 0fdcdb7371631a7d51d1de312cc33929eee6dcab [file] [log] [blame]
# Copyright (c) 2008 The Board of Trustees of The Leland Stanford Junior University
# Copyright (c) 2011, 2012 Open Networking Foundation
# Copyright (c) 2012, 2013 Big Switch Networks, Inc.
# See the file LICENSE.pyloxi which should have been included in the source distribution
# Automatically generated by LOXI from template toplevel_init.py
# Do not modify
version_names = {
1: "1.0",
2: "1.1",
3: "1.2",
4: "1.3",
5: "1.4",
}
def protocol(ver):
"""
Import and return the protocol module for the given wire version.
"""
if ver == 1:
import of10
return of10
if ver == 2:
import of11
return of11
if ver == 3:
import of12
return of12
if ver == 4:
import of13
return of13
if ver == 5:
import of14
return of14
raise ValueError
class ProtocolError(Exception):
"""
Raised when failing to deserialize an invalid OpenFlow message.
"""
pass
class Unimplemented(Exception):
"""
Raised when an OpenFlow feature is not yet implemented in PyLoxi.
"""
pass
def unimplemented(msg):
raise Unimplemented(msg)
class OFObject(object):
"""
Superclass of all OpenFlow classes
"""
def __init__(self, *args):
raise NotImplementedError("cannot instantiate abstract class")
def __ne__(self, other):
return not self.__eq__(other)
def show(self):
import loxi.pp
return loxi.pp.pp(self)