protected function writeFixture(dmModule $module, $securityDesc)
 {
     $this->clear();
     if ($pluginName = $module->getPluginName()) {
         $root = dmContext::getInstance()->getConfiguration()->getPluginConfiguration($pluginName)->getRootDir();
     } else {
         $root = sfConfig::get('sf_root_dir');
     }
     $fixturesRootPath = dmOs::join($root, 'data', 'fixtures');
     foreach (array('admin', 'front') as $app) {
         foreach (array('actions', 'components') as $actionKind) {
             if (isset($securityDesc[$app]) && isset($securityDesc[$app][$actionKind]) && is_array($securityDesc[$app][$actionKind])) {
                 foreach ($securityDesc[$app][$actionKind] as $actionName => $actionDesc) {
                     if (isset($actionDesc['credentials'])) {
                         $credentials = (array) $module->getSecurityManager()->parseCredentials($actionDesc['credentials']);
                         foreach ($credentials as $credential) {
                             $this->addPermissionFor($credential, $module->getKey(), $actionName);
                         }
                     }
                 }
             }
         }
     }
     $this->doWriteFixture(dmOs::join($fixturesRootPath, 'DmPermissions', $module->getKey() . '.yml'));
 }
 protected function addFixtures(dmModule $module, $securityDesc)
 {
     foreach (array('admin', 'front') as $app) {
         foreach (array('actions', 'components') as $actionKind) {
             if (isset($securityDesc[$app]) && isset($securityDesc[$app][$actionKind]) && is_array($securityDesc[$app][$actionKind])) {
                 foreach ($securityDesc[$app][$actionKind] as $actionName => $actionDesc) {
                     if (isset($actionDesc['credentials'])) {
                         $credentials = (array) $module->getSecurityManager()->parseCredentials($actionDesc['credentials']);
                         foreach ($credentials as $credential) {
                             $this->addPermissionFor($credential, $module->getKey(), $actionName);
                         }
                     }
                 }
             }
         }
     }
 }