public function equals(CustomVariable $var)
 {
     if (!$var instanceof CustomVariableArray) {
         return false;
     }
     return $var->getDbValue() === $this->getDbValue();
 }
 public function equals(CustomVariable $var)
 {
     if (!$var instanceof CustomVariableDictionary) {
         return false;
     }
     $myKeys = $this->listKeys();
     $foreignKeys = $var->listKeys();
     if ($myKeys !== $foreignKeys) {
         return false;
     }
     foreach ($this->value as $key => $value) {
         if (!$value->equals($var->getInternalValue($key))) {
             return false;
         }
     }
     return true;
 }
 public static function loadForStoredObject(IcingaObject $object)
 {
     $db = $object->getDb();
     $query = $db->select()->from(array('v' => $object->getVarsTableName()), array('v.varname', 'v.varvalue', 'v.format'))->where(sprintf('v.%s = ?', $object->getVarsIdColumn()), $object->id);
     $vars = new CustomVariables();
     foreach ($db->fetchAll($query) as $row) {
         $vars->vars[$row->varname] = CustomVariable::fromDbRow($row);
     }
     $vars->refreshIndex();
     $vars->setUnmodified();
     return $vars;
 }
 public function equals(CustomVariable $var)
 {
     return $var->getValue() === $this->getValue();
 }