/**
  * @param RequiresConfig $factory
  * @param mixed $currentDimension Current configuration key
  * @param string $configId
  * @return InvalidArgumentException
  */
 public static function missingOptions(RequiresConfig $factory, $currentDimension, $configId)
 {
     $position = [];
     $dimensions = $factory->dimensions();
     if ($factory instanceof RequiresConfigId) {
         $dimensions[] = $configId;
     }
     foreach ($dimensions as $dimension) {
         $position[] = $dimension;
         if ($dimension === $currentDimension) {
             break;
         }
     }
     if ($factory instanceof RequiresConfigId && $configId === null && count($dimensions) === count($position)) {
         return new static(rtrim(sprintf('The configuration "%s" needs a config id.', implode('.', $position)), '.'));
     }
     return new static(sprintf('No options set for configuration "%s"', implode('.', $position)));
 }
Пример #2
0
 /**
  * Retrieve options
  */
 public function benchOptions()
 {
     $this->factory->options($this->config, $this->configId);
 }