"""passbook app_gw cache clean signals""" from logging import getLogger from django.core.cache import cache from django.db.models.signals import post_save from django.dispatch import receiver from passbook.app_gw.middleware import IGNORED_HOSTNAMES_KEY from passbook.app_gw.models import ApplicationGatewayProvider LOGGER = getLogger(__name__) @receiver(post_save) # pylint: disable=unused-argument def invalidate_app_gw_cache(sender, instance, **kwargs): """Invalidate Policy cache when app_gw is updated""" if isinstance(instance, ApplicationGatewayProvider): LOGGER.debug("Invalidating cache for ignored hostnames") cache.delete(IGNORED_HOSTNAMES_KEY)