public function getServiceSpec($name, $inherit = true)
    {
        if (isset($this->specs[$name])) {
            return $this->specs[$name];
        }

        // Lazy load
        $config = $this->configLocator->locateConfigFor($name);
        if ($config) {
            $this->load([$name => $config]);
            if (isset($this->specs[$name])) {
                return $this->specs[$name];
            }
        }

        // Fail over to parent service if allowed
        if (!$inherit || !strpos($name, '.')) {
            return null;
        }

        return $this->getServiceSpec(substr($name, 0, strrpos($name, '.')));
    }