Coverage for pnr_observer.py : 78%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
############################################################################# # # Manage the flash lists and site flags, alerting surrogates of updates # # Copyright (C) 2015-2016 Menlo Security, Inc. # All rights reserved. # #############################################################################
auto_prefix=True) config.getint('surrogate_manager', 'pnr_refresh_secs') * 1000) # Cache of site flags # Cache of flash lists
def _on_periodic(self): '/api/v1/pe/site_flags') self._site_flags = new_site_flags self.log.info({'count': len(new_site_flags)}, event='site-flags-changed') PNRHelper().post_request,'/api/v2/pe/flash_site_list', {'tid': tid}) # Check that the tid is still in use after the yield. self._flash_lists[tid] = flash_list self.log.info({'count': len(flash_list), 'tid': tid}, event='flash-list-changed') for observer in self._observers_by_tid[tid]: try: observer({'flash_list': self._flash_lists[tid], 'site_flags': self._site_flags}) except Exception: self.log.exception({}, event='pnr-callback-exception')
def register(self, tid, observer_callback): self._observers_by_tid[tid].add(observer_callback) raise tornado.gen.Return({'flash_list': self._flash_lists[tid], 'site_flags': self._site_flags}) '/api/v1/pe/site_flags') event='site-flags-changed') PNRHelper().post_request, '/api/v2/pe/flash_site_list', {'tid': tid}) event='flash-list-changed') # Watch for race here - another surrogate could # have registered while we yielded 'site_flags': self._site_flags})
return else: self.log.warn({'tid': tid}, event='deregister-no-entry') |