# import pika import socket import sys import time import traceback from oslo_serialization import jsonutils from networking_cisco._i18n import _LE, _LI from networking_cisco.apps.saf.common import dfa_logger as logging LOG = logging.getLogger(__name__) class DCNMListener(object): """This AMQP client class listens to DCNM's AMQP notification and interacts with openstack for further tenant and network information. It also communicates with CPNR to populate DHCP data. """ def __init__(self, name, ip, user, password, pqueue=None, c_pri=100, d_pri=100): """Create a new instance of AMQP client. :param dict params: AMQP configuration parameters, e.g. AMQP server ip, port, user name, password, name of AMQP
import os import platform import sys import time from oslo_serialization import jsonutils from networking_cisco.apps.saf.agent import iptables_driver as iptd from networking_cisco.apps.saf.agent.vdp import dfa_vdp_mgr as vdpm from networking_cisco.apps.saf.common import config from networking_cisco.apps.saf.common import constants from networking_cisco.apps.saf.common import dfa_logger as logging from networking_cisco.apps.saf.common import rpc from networking_cisco.apps.saf.common import utils LOG = logging.getLogger(__name__) thishost = platform.node() class RpcCallBacks(object): """RPC call back methods.""" def __init__(self, vdpd, ipt_drvr): self._vdpd = vdpd self._iptd = ipt_drvr def _enqueue_event(self, vm): oui = vm.get('oui') if oui and oui.get('ip_addr') != '0.0.0.0' and self._iptd: rule_info = dict(mac=vm.get('vm_mac'), ip=oui.get('ip_addr'),