Esempio n. 1
0
 /**
  * Returns multi-dimension
  *
  * @param unknown_type $hosttemplateinfo
  * @param unknown_type $hosttemplateinfoSources
  * @return unknown
  */
 public function getValues($inherited = false)
 {
     $values = array();
     $c = new Criteria();
     $c->add(NagiosHostTemplateInheritancePeer::SOURCE_TEMPLATE, $this->getId());
     $c->addAscendingOrderByColumn(NagiosHostTemplateInheritancePeer::ORDER);
     $inheritanceTemplates = NagiosHostTemplateInheritancePeer::doSelect($c);
     if (count($inheritanceTemplates)) {
         // This template has inherited templates, let's bring their values in
         foreach ($inheritanceTemplates as $inheritanceItem) {
             $hostTemplate = $inheritanceItem->getNagiosHostTemplateRelatedByTargetTemplate();
             $templateValues = $hostTemplate->getValues(true);
             $values = array_merge($values, $templateValues);
         }
     }
     foreach (NagiosHostTemplatePeer::getFieldNames() as $fieldName) {
         $colName = NagiosHostTemplatePeer::translateFieldName($fieldName, BasePeer::TYPE_PHPNAME, BasePeer::TYPE_COLNAME);
         // At this point, $fieldName is the fieldname for each column in our table record
         $colName = strtolower(substr($colName, strlen("nagios_host_template.")));
         // $colName is now the abbreviated column name.
         switch ($colName) {
             case 'maximum_check_attempts':
                 $colName = 'max_check_attempts';
                 break;
         }
         $methodName = "get" . $fieldName;
         if (method_exists($this, $methodName)) {
             $val = $this->{$methodName}();
             if ($val !== null) {
                 // Yay, let's populate
                 $values[$colName] = array('inherited' => $inherited, 'source' => array('id' => $this->getId(), 'name' => $this->getName()), 'value' => $val);
             }
         }
     }
     return $values;
 }
Esempio n. 2
0
 /**
  * Populates the object using an array.
  *
  * This is particularly useful when populating an object from one of the
  * request arrays (e.g. $_POST).  This method goes through the column
  * names, checking to see whether a matching key exists in populated
  * array. If so the setByName() method is called for that column.
  *
  * You can specify the key type of the array by additionally passing one
  * of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME,
  * BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM.
  * The default key type is the column's phpname (e.g. 'AuthorId')
  *
  * @param      array  $arr     An array to populate the object from.
  * @param      string $keyType The type of keys the array uses.
  * @return     void
  */
 public function fromArray($arr, $keyType = BasePeer::TYPE_PHPNAME)
 {
     $keys = NagiosHostTemplatePeer::getFieldNames($keyType);
     if (array_key_exists($keys[0], $arr)) {
         $this->setId($arr[$keys[0]]);
     }
     if (array_key_exists($keys[1], $arr)) {
         $this->setName($arr[$keys[1]]);
     }
     if (array_key_exists($keys[2], $arr)) {
         $this->setDescription($arr[$keys[2]]);
     }
     if (array_key_exists($keys[3], $arr)) {
         $this->setInitialState($arr[$keys[3]]);
     }
     if (array_key_exists($keys[4], $arr)) {
         $this->setCheckCommand($arr[$keys[4]]);
     }
     if (array_key_exists($keys[5], $arr)) {
         $this->setRetryInterval($arr[$keys[5]]);
     }
     if (array_key_exists($keys[6], $arr)) {
         $this->setFirstNotificationDelay($arr[$keys[6]]);
     }
     if (array_key_exists($keys[7], $arr)) {
         $this->setMaximumCheckAttempts($arr[$keys[7]]);
     }
     if (array_key_exists($keys[8], $arr)) {
         $this->setCheckInterval($arr[$keys[8]]);
     }
     if (array_key_exists($keys[9], $arr)) {
         $this->setPassiveChecksEnabled($arr[$keys[9]]);
     }
     if (array_key_exists($keys[10], $arr)) {
         $this->setCheckPeriod($arr[$keys[10]]);
     }
     if (array_key_exists($keys[11], $arr)) {
         $this->setObsessOverHost($arr[$keys[11]]);
     }
     if (array_key_exists($keys[12], $arr)) {
         $this->setCheckFreshness($arr[$keys[12]]);
     }
     if (array_key_exists($keys[13], $arr)) {
         $this->setFreshnessThreshold($arr[$keys[13]]);
     }
     if (array_key_exists($keys[14], $arr)) {
         $this->setActiveChecksEnabled($arr[$keys[14]]);
     }
     if (array_key_exists($keys[15], $arr)) {
         $this->setChecksEnabled($arr[$keys[15]]);
     }
     if (array_key_exists($keys[16], $arr)) {
         $this->setEventHandler($arr[$keys[16]]);
     }
     if (array_key_exists($keys[17], $arr)) {
         $this->setEventHandlerEnabled($arr[$keys[17]]);
     }
     if (array_key_exists($keys[18], $arr)) {
         $this->setLowFlapThreshold($arr[$keys[18]]);
     }
     if (array_key_exists($keys[19], $arr)) {
         $this->setHighFlapThreshold($arr[$keys[19]]);
     }
     if (array_key_exists($keys[20], $arr)) {
         $this->setFlapDetectionEnabled($arr[$keys[20]]);
     }
     if (array_key_exists($keys[21], $arr)) {
         $this->setProcessPerfData($arr[$keys[21]]);
     }
     if (array_key_exists($keys[22], $arr)) {
         $this->setRetainStatusInformation($arr[$keys[22]]);
     }
     if (array_key_exists($keys[23], $arr)) {
         $this->setRetainNonstatusInformation($arr[$keys[23]]);
     }
     if (array_key_exists($keys[24], $arr)) {
         $this->setNotificationInterval($arr[$keys[24]]);
     }
     if (array_key_exists($keys[25], $arr)) {
         $this->setNotificationPeriod($arr[$keys[25]]);
     }
     if (array_key_exists($keys[26], $arr)) {
         $this->setNotificationsEnabled($arr[$keys[26]]);
     }
     if (array_key_exists($keys[27], $arr)) {
         $this->setNotificationOnDown($arr[$keys[27]]);
     }
     if (array_key_exists($keys[28], $arr)) {
         $this->setNotificationOnUnreachable($arr[$keys[28]]);
     }
     if (array_key_exists($keys[29], $arr)) {
         $this->setNotificationOnRecovery($arr[$keys[29]]);
     }
     if (array_key_exists($keys[30], $arr)) {
         $this->setNotificationOnFlapping($arr[$keys[30]]);
     }
     if (array_key_exists($keys[31], $arr)) {
         $this->setNotificationOnScheduledDowntime($arr[$keys[31]]);
     }
     if (array_key_exists($keys[32], $arr)) {
         $this->setStalkingOnUp($arr[$keys[32]]);
     }
     if (array_key_exists($keys[33], $arr)) {
         $this->setStalkingOnDown($arr[$keys[33]]);
     }
     if (array_key_exists($keys[34], $arr)) {
         $this->setStalkingOnUnreachable($arr[$keys[34]]);
     }
     if (array_key_exists($keys[35], $arr)) {
         $this->setFailurePredictionEnabled($arr[$keys[35]]);
     }
     if (array_key_exists($keys[36], $arr)) {
         $this->setFlapDetectionOnUp($arr[$keys[36]]);
     }
     if (array_key_exists($keys[37], $arr)) {
         $this->setFlapDetectionOnDown($arr[$keys[37]]);
     }
     if (array_key_exists($keys[38], $arr)) {
         $this->setFlapDetectionOnUnreachable($arr[$keys[38]]);
     }
     if (array_key_exists($keys[39], $arr)) {
         $this->setNotes($arr[$keys[39]]);
     }
     if (array_key_exists($keys[40], $arr)) {
         $this->setNotesUrl($arr[$keys[40]]);
     }
     if (array_key_exists($keys[41], $arr)) {
         $this->setActionUrl($arr[$keys[41]]);
     }
     if (array_key_exists($keys[42], $arr)) {
         $this->setIconImage($arr[$keys[42]]);
     }
     if (array_key_exists($keys[43], $arr)) {
         $this->setIconImageAlt($arr[$keys[43]]);
     }
     if (array_key_exists($keys[44], $arr)) {
         $this->setVrmlImage($arr[$keys[44]]);
     }
     if (array_key_exists($keys[45], $arr)) {
         $this->setStatusmapImage($arr[$keys[45]]);
     }
     if (array_key_exists($keys[46], $arr)) {
         $this->setTwoDCoords($arr[$keys[46]]);
     }
     if (array_key_exists($keys[47], $arr)) {
         $this->setThreeDCoords($arr[$keys[47]]);
     }
     if (array_key_exists($keys[48], $arr)) {
         $this->setAutodiscoveryAddressFilter($arr[$keys[48]]);
     }
     if (array_key_exists($keys[49], $arr)) {
         $this->setAutodiscoveryHostnameFilter($arr[$keys[49]]);
     }
     if (array_key_exists($keys[50], $arr)) {
         $this->setAutodiscoveryOsFamilyFilter($arr[$keys[50]]);
     }
     if (array_key_exists($keys[51], $arr)) {
         $this->setAutodiscoveryOsGenerationFilter($arr[$keys[51]]);
     }
     if (array_key_exists($keys[52], $arr)) {
         $this->setAutodiscoveryOsVendorFilter($arr[$keys[52]]);
     }
 }