protected function createDefaultFactory()
    {
        $loader = $this->loader ? : $this->createDefaultLoader();
        if ($this->hierarchy) {
            $loader = new HierarchicalNameLoader($loader);
        }
        $rootAdapter = $this->fallbackAdapter ? : $this->createDefaultFallbackAdapter();

        return new AdapterLoaderFactory($loader, $rootAdapter);
    }