def destroy(self): """ Cleanly destroyes all components """ pa = self.get_presentation_agent() pa.get_event_bus().unsubscribe( UIActionEvent, self.action_evt_callback) # Destroyes slave components for slave in self._slaves: slave.destroy() BaseControlAgent.destroy(self)
def __init__(self): """ Initializes control agent. """ BaseControlAgent.__init__(self) self._hosts = [] self._filter_name = '*' self._filter_name_re = re.compile(r"^[\w\d\*_-]*$") self._filter_domain = '*' self._filter_domain_re = re.compile(r"^[\w\d\*\._-]*$") pa = ListSitesPresentationAgent(self) domains = SiteDefaultsManager.get_domains() domains['*'] = '*' pa.set_items('filter_domain', domains) pa.get_event_bus().subscribe(UIActionEvent, self.action_evt_callback) pa.get_event_bus().subscribe(UIWidgetEvent, self.widget_evt_callback) self.set_presentation_agent(pa)
def __init__(self, site, read_only): """ ControlAgent initialization """ BaseControlAgent.__init__(self) self.set_site(site) self.set_read_only_flag(read_only) pa = DetailMainPresentationAgent(self) pa.get_event_bus().subscribe( UIActionEvent, self.action_evt_callback) # Main detail presentation agent has no reason to listen to changed # attribute events. Disabled. self._slaves = [] # Creates general component slave = DetailDNSHostControlAgent(site.dnshost, read_only) self._slaves.append(slave) pa.attach_slave('dnshost', 'hbox_general', slave.get_presentation_agent()) # Creates repository component slave = DetailRepositoryControlAgent(site.repository, read_only) self._slaves.append(slave) pa.attach_slave('repository', 'hbox_repository', slave.get_presentation_agent()) # Creates site component slave = DetailSiteControlAgent(site.website, read_only) self._slaves.append(slave) pa.attach_slave('website', 'hbox_sites', slave.get_presentation_agent()) # Creates database component slave = DetailDatabaseControlAgent(site.database, read_only) self._slaves.append(slave) pa.attach_slave('database', 'hbox_databases', slave.get_presentation_agent()) self.set_presentation_agent(pa) self._validity_matrix = {}
def destroy(self): """ Cleanly destroyes all components """ BaseControlAgent.destroy(self)
def __init__(self): BaseControlAgent.__init__(self)