/**
  * Get formatted discovery rules, if either "createMissing" or "updateExisting" discovery rules option is true.
  *
  * @return array
  */
 protected function getFormattedDiscoveryRules()
 {
     if (!isset($this->formattedData['discoveryRules'])) {
         $this->formattedData['discoveryRules'] = array();
         if ($this->options['discoveryRules']['updateExisting'] || $this->options['discoveryRules']['createMissing']) {
             $this->formattedData['discoveryRules'] = $this->formatter->getDiscoveryRules();
         }
     }
     return $this->formattedData['discoveryRules'];
 }
 /**
  * Get formatted discovery rules.
  *
  * @return array
  */
 protected function getFormattedDiscoveryRules()
 {
     if (!isset($this->formattedData['discoveryRules'])) {
         $this->formattedData['discoveryRules'] = $this->formatter->getDiscoveryRules();
         foreach ($this->formattedData['discoveryRules'] as &$discoveryRules) {
             foreach ($discoveryRules as &$discoveryRule) {
                 foreach ($discoveryRule['trigger_prototypes'] as &$triggerPrototype) {
                     $triggerPrototype['parsedExpressions'] = $this->parseTriggerExpression($triggerPrototype['expression']);
                 }
                 unset($triggerPrototype);
             }
             unset($discoveryRule);
         }
         unset($discoveryRules);
     }
     return $this->formattedData['discoveryRules'];
 }