objectManager = $objectManager; $configValue = $engineResolver->getCurrentSearchEngine(); if (isset($intervals[$configValue])) { $this->interval = $intervals[$configValue]; } else { throw new \LogicException("Interval not found by config {$configValue}"); } } /** * Create interval * * @param array $data * @return IntervalInterface */ public function create(array $data = []) { $interval = $this->objectManager->create($this->interval, $data); if (!$interval instanceof IntervalInterface) { throw new \LogicException( 'Interval not instance of interface ' . IntervalInterface::class ); } return $interval; } }