private function load()
    {
        if ($this->loaded === false) {
            if ($this->autoCreate === true) {
                if (!is_file($this->path)) {
                    $this->touch();
                }
            }

            $array = $this->fileType->fetch($this->path);

            if (is_array($array)) {
                // Keep initial array hash
                $this->hash = $this->serializer->buildHash($array);
                $this->config = $array;
                $this->loaded = true;

                return true;
            } else {
                throw new LogicException(sprintf(
                    'Required file should return an array and only, not "%s"', gettype($array)
                ));
            }
        }

        return true;
    }