private function &getBaseXPath()
 {
     $str = '';
     $class = get_class($this->owner);
     if ($class == 'PanoramaConf' || $class == 'PANConf') {
         $str = "/config/shared";
     } else {
         $str = $this->owner->getXPath();
     }
     return $str;
 }
Пример #2
0
 public function &getXPath(Rule $contextRule)
 {
     $class = get_class($this->owner);
     $serial = spl_object_hash($contextRule);
     $str = '';
     if ($class == 'VirtualSystem') {
         $str = $this->owner->getXPath() . '/rulebase';
     } else {
         if ($class == 'DeviceGroup') {
             if ($contextRule->isPreRule()) {
                 $str = $this->owner->getXPath() . '/pre-rulebase';
             } else {
                 if ($contextRule->isPostRule()) {
                     $str = $this->owner->getXPath() . '/post-rulebase';
                 } else {
                     derr('unsupported mode');
                 }
             }
         } else {
             if ($class == 'PANConf') {
                 derr('unsupported');
             } else {
                 if ($class == 'PanoramaConf') {
                     if ($contextRule->isPreRule()) {
                         $str = "/config/shared/pre-rulebase";
                     } else {
                         if ($contextRule->isPostRule()) {
                             $str = "/config/shared/post-rulebase";
                         } else {
                             derr('unsupported mode');
                         }
                     }
                 } else {
                     derr('unsupported mode');
                 }
             }
         }
     }
     $str .= '/' . self::$storeNameByType[$this->type]['xpathRoot'] . '/rules';
     return $str;
 }
 /**
  * Create a blank device group. Return that DV object.
  **/
 public function createDeviceGroup($newDV_Name)
 {
     $newDG = new DeviceGroup($this);
     $newDG->load_from_templateXml();
     $newDG->setName($newDV_Name);
     return $newDG;
 }