def __call__(self):
        watcher = _RecordingWatcherWrapper(
            self._url_watcher_wrapper.watcher)

        old_active_reviews = set(self._review_cache.active_reviews)

        was_active = self._active_state.is_active
        if self._active_state.calc_active():
            if not was_active:
                _LOGGER.info(
                    'repo-event: {} re-enabled'.format(self._name))

            try:
                _process_repo(
                    self._abd_repo,
                    self._name,
                    self._args,
                    self._arcyd_conduit,
                    watcher,
                    self._mail_sender)
            except Exception:
                retry_delay = self._active_state.disable()
                _LOGGER.info(
                    'repo-event: {} disabled, retry in {}'.format(
                        self._name, retry_delay))
                self._on_exception(retry_delay)
        else:
            _LOGGER.debug(
                'repo-status: {} is inactive until {}'.format(
                    self._name, self._active_state.reactivate_time))

        return (
            self._review_cache.active_reviews - old_active_reviews,
            self._active_state,
            watcher.get_data_for_merging(),
            self._refcache_repo.peek_hash_ref_pairs(),
            self._differ_cache.get_cache()
        )
dataset/ETHPy150Open bloomberg/phabricator-tools/py/abd/abdi_processrepoarglist.py/_ArcydManagedRepository.__call__/original