public function testClearCache()
 {
     $this->cache->expects($this->once())->method('delete')->with('SomeType');
     $this->cache->expects($this->once())->method('deleteAll');
     $provider = new Provider($this->securityConfigProvider, $this->entityConfigProvider, $this->cache);
     $provider->clearCache('SomeType');
     $provider->clearCache();
 }
 /**
  * @param PersistConfigEvent $event
  */
 public function prePersistEntityConfig(PersistConfigEvent $event)
 {
     $cp = $event->getConfigManager()->getProvider('security');
     $className = $event->getConfig()->getId()->getClassName();
     if ($cp->hasConfig($className)) {
         $config = $cp->getConfig($className);
         $this->provider->clearCache($config->get('type'));
     }
 }
 /**
  * @param PreFlushConfigEvent $event
  */
 public function preFlush(PreFlushConfigEvent $event)
 {
     if ($event->isFieldConfig()) {
         return;
     }
     $className = $event->getClassName();
     $configProvider = $event->getConfigManager()->getProvider('security');
     if ($configProvider->hasConfig($className)) {
         $this->provider->clearCache($configProvider->getConfig($className)->get('type'));
     }
 }
 /**
  * {inheritdoc}
  */
 public function clear($cacheDir)
 {
     $this->provider->clearCache();
 }