protected function boot()
    {
        $configLoader = new ConfigLoader($this->environment);
        $this->di->setShared('config-loader', $configLoader);
        $id = Bootstrap::CONFIG . '_' . $this->name . '_' . $this->environment;
        $cache = null;
        if ($this->cacheable === true) {
            $cache = apc_fetch($id);
        }

        if ($cache === false || $cache === null) {
            $this->config = $configLoader->create($this->pathConfig);

            $this->config->merge(
                new Config(['environment' => $this->environment])
            );
            if ($cache === false) {
                apc_add($id, $this->config);
            }
        } else {
            $this->config = $cache;
        }
    }