protected function createService(string $name, array $service) : void
    {
        if (!isset($service["callback"])) {
            throw new Exception("The service '$name' is missing a callback.");
        }

        if (isset($service["shared"]) && $service["shared"]) {
            $this->setShared($name, $service["callback"]);
        } else {
            $this->set($name, $service["callback"]);
        }

        if (isset($service["active"]) && $service["active"]) {
            $this->get($name);
        }
    }