Python2 defaults to old style classes to maintain compatability with python 2.1.
Moving to new style classes will ensure consistent behavior across interpreters.
Change-Id: I89493d608d1edb63989000c17a9566a97785a4aa
Signed-off-by: Paul Vinciguerra <pvinci@vinciconsulting.com>
from socket import inet_pton, inet_ntop, AF_INET6, AF_INET
from socket import inet_pton, inet_ntop, AF_INET6, AF_INET
+class VPPFormat(object):
@staticmethod
def format_vl_api_ip6_prefix_t(args):
prefix, len = args.split('/')
@staticmethod
def format_vl_api_ip6_prefix_t(args):
prefix, len = args.split('/')
# Python3
# class VppEnum(metaclass=VppEnumType):
# pass
# Python3
# class VppEnum(metaclass=VppEnumType):
# pass
__metaclass__ = VppEnumType
__metaclass__ = VppEnumType
return self._func(**kwargs)
return self._func(**kwargs)
"""VPP interface.
This class provides the APIs to VPP. The APIs are loaded
"""VPP interface.
This class provides the APIs to VPP. The APIs are loaded
logger = logging.getLogger(__name__)
logger = logging.getLogger(__name__)
+class BaseTypes(object):
def __init__(self, type, elements=0):
base_types = {'u8': '>B',
'u16': '>H',
def __init__(self, type, elements=0):
base_types = {'u8': '>B',
'u16': '>H',
+class FixedList_u8(object):
def __init__(self, name, field_type, num):
self.name = name
self.num = num
def __init__(self, name, field_type, num):
self.name = name
self.num = num
return self.packer.unpack(data, offset)
return self.packer.unpack(data, offset)
+class FixedList(object):
def __init__(self, name, field_type, num):
self.num = num
self.packer = types[field_type]
def __init__(self, name, field_type, num):
self.num = num
self.packer = types[field_type]
def __init__(self, name, field_type, len_field_name, index):
self.name = name
self.index = index
def __init__(self, name, field_type, len_field_name, index):
self.name = name
self.index = index
+class VPPEnumType(object):
def __init__(self, name, msgdef):
self.size = types['u32'].size
e_hash = {}
def __init__(self, name, msgdef):
self.size = types['u32'].size
e_hash = {}
return self.enum(x), size
return self.enum(x), size
+class VPPUnionType(object):
def __init__(self, name, msgdef):
self.name = name
self.size = 0
def __init__(self, name, msgdef):
self.name = name
self.size = 0
return self.tuple._make(r), maxsize
return self.tuple._make(r), maxsize
# Set everything up to be able to pack / unpack
def __init__(self, name, msgdef):
self.name = name
# Set everything up to be able to pack / unpack
def __init__(self, name, msgdef):
self.name = name
def __init__(self, socketname='/var/run/stats.sock', timeout=10):
try:
self.api = ffi.dlopen('libvppapiclient.so')
def __init__(self, socketname='/var/run/stats.sock', timeout=10):
try:
self.api = ffi.dlopen('libvppapiclient.so')
vpp_object.logger.warning("VPP API client:: %s", ffi.string(msg, msg_len))
vpp_object.logger.warning("VPP API client:: %s", ffi.string(msg, msg_len))
+class VppTransport(object):
def __init__(self, parent, read_timeout, server_address):
self.connected = False
self.read_timeout = read_timeout
def __init__(self, parent, read_timeout, server_address):
self.connected = False
self.read_timeout = read_timeout
+class VppTransport(object):
def __init__(self, parent, read_timeout, server_address):
self.connected = False
self.read_timeout = read_timeout if read_timeout > 0 else 1
def __init__(self, parent, read_timeout, server_address):
self.connected = False
self.read_timeout = read_timeout if read_timeout > 0 else 1