Beispiel #1
0
    def __init__(self):
        Daemon.__init__(self)
        # Initalise variables
        self.__henManager = HenManager()
        self.__nodes = None
        self.__vlans = {}  #
        self.__vlan_info = {}  # switch_name -> [vlan_name,vlan_name,...]
        self.__switch_instances = {}
        self.__test_mode = False
        self.__minimum_id = 200
        self.__maximum_id = 2000
        self.__vlanOwnerFilename = "/usr/local/hen/etc/switchd/vlan_owner.dat"

        self.__int_to_vlan = {}  # (computer_str,interface_str) -> vlan_name

        self.__switchdb = SwitchDB()
        log.debug("Switchdb " + str(self.__switchdb))
        # Register hen rpc methods and handlers
        log.debug("Registering methods")
        self.__registerMethods()
        # Load vlan info
        log.debug("Loading vlan info")
        self.__initaliseVlanInfo()
        # Setup mac polling
        log.debug("Loading henmanager")
        self.__switchdb.setHenManager(self.__henManager)
        log.debug("Loading links Db")
        self.__switchdb.loadLinksDb()
        log.debug("Initiating Nodes")
        self.initiateNodes()

        # vlan owners
        self.__vlan_owner_name = {}
        self.__vlan_name_owner = {}
        self.loadVlanOwnerFile()