protected function symlinkLegacyExtensionSiteAccesses(string $legacyExtensionPath, OutputInterface $output): void
    {
        $legacyRootDir = $this->getContainer()->getParameter('ezpublish_legacy.root_dir');

        /** @var \DirectoryIterator[] $directories */
        $directories = [];

        $path = $legacyExtensionPath . '/root_' . $this->environment . '/settings/siteaccess/';
        if ($this->fileSystem->exists($path)) {
            $directories[] = new DirectoryIterator($path);
        }

        $path = $legacyExtensionPath . '/root/settings/siteaccess/';
        if ($this->fileSystem->exists($path)) {
            $directories[] = new DirectoryIterator($path);
        }

        $processedSiteAccesses = [];
        foreach ($directories as $directory) {
            foreach ($directory as $item) {
                if (!$item->isDir() || $item->isDot()) {
                    continue;
                }

                // We want root_* to have priority, so any siteaccess which we already "processed" will be skipped
                if (!in_array($item->getBasename(), $processedSiteAccesses, true)) {
                    $this->verifyAndSymlinkDirectory(
                        $item->getPathname(),
                        $legacyRootDir . '/settings/siteaccess/' . $item->getBasename(),
                        $output
                    );

                    $processedSiteAccesses[] = $item->getBasename();
                }
            }
        }
    }
protected function symlinkLegacyExtensionSiteAccesses(string $legacyExtensionPath, OutputInterface $output): void
    {
        $legacyRootDir = $this->getContainer()->getParameter('ezpublish_legacy.root_dir');

        /** @var \DirectoryIterator[] $directories */
        $directories = [];

        $path = $legacyExtensionPath . '/root_' . $this->environment . '/settings/siteaccess/';
        if ($this->fileSystem->exists($path)) {
            $directories[] = new DirectoryIterator($path);
        }

        $path = $legacyExtensionPath . '/root/settings/siteaccess/';
        if ($this->fileSystem->exists($path)) {
            $directories[] = new DirectoryIterator($path);
        }

        $processedSiteAccesses = [];
        foreach ($directories as $directory) {
            foreach ($directory as $item) {
                if (!$item->isDir() || $item->isDot()) {
                    continue;
                }

                // We want root_* to have priority, so any siteaccess which we already "processed" will be skipped
                if (!in_array($item->getBasename(), $processedSiteAccesses, true)) {
                    $this->verifyAndSymlinkDirectory(
                        $item->getPathname(),
                        $legacyRootDir . '/settings/siteaccess/' . $item->getBasename(),
                        $output
                    );

                    $processedSiteAccesses[] = $item->getBasename();
                }
            }
        }
    }
protected function symlinkLegacyExtensionSiteAccesses ( string $ legacyExtensionPath , OutputInterface $ output ) : void { $ legacyRootDir = $ this -> getContainer ( ) -> getParameter ( 'ezpublish_legacy.root_dir' ) ; /** @var \DirectoryIterator[] $directories */ $ directories = [ ] ; $ path = $ legacyExtensionPath . '/root_' . $ this -> environment . '/settings/siteaccess/' ; if ( $ this -> fileSystem -> exists ( $ path ) ) { $ directories [ ] = new DirectoryIterator ( $ path ) ; } $ path = $ legacyExtensionPath . '/root/settings/siteaccess/' ; if ( $ this -> fileSystem -> exists ( $ path ) ) { $ directories [ ] = new DirectoryIterator ( $ path ) ; } $ processedSiteAccesses = [ ] ; foreach ( $ directories as $ directory ) { foreach ( $ directory as $ item ) { if ( ! $ item -> isDir ( ) || $ item -> isDot ( ) ) { continue ; } // We want root_* to have priority, so any siteaccess which we already "processed" will be skipped if ( ! in_array ( $ item -> getBasename ( ) , $ processedSiteAccesses , true ) ) { $ this -> verifyAndSymlinkDirectory ( $ item -> getPathname ( ) , $ legacyRootDir . '/settings/siteaccess/' . $ item -> getBasename ( ) , $ output ) ; $ processedSiteAccesses [ ] = $ item -> getBasename ( ) ; } } } }
Symlinks siteccesses from a legacy extension.
Symlinks siteccesses from a legacy extension .