Пример #1
0
 public function generateCVMP($cvmp, $vm)
 {
     //TODO prettify this
     $newCvmps = [];
     $pm = $cvmp['vmp'][$vm];
     Cvmp::removeVm($cvmp, $vm);
     $pms = $cvmp['pmp'];
     unset($pms[$pm]);
     $pms = array_keys($pms);
     foreach ($pms as $pm) {
         if (RulesFreeOfContext::isAllowed($vm, $pm)) {
             $newCvmp = $cvmp;
             Cvmp::addVm($newCvmp, $vm, $pm);
             if (RulesSensitiveToTheContext::isAllowed($newCvmp)) {
                 $newCvmps[] = $newCvmp;
             }
         }
     }
     return $newCvmps;
 }