function IconFinder::findFiles

Creates a Finder instance with configured patterns and return result.

Parameters

string $path: The path to search for icons.

string $names: The file names for Finder::names().

Return value

\Symfony\Component\Finder\Finder|null The configured Finder instance.

1 call to IconFinder::findFiles()
IconFinder::getFilesFromPath in core/lib/Drupal/Core/Theme/Icon/IconFinder.php
Get files from a local path.

File

core/lib/Drupal/Core/Theme/Icon/IconFinder.php, line 256

Class

IconFinder
Icon finder to discover files under specific paths or URLs.

Namespace

Drupal\Core\Theme\Icon

Code

private function findFiles(string $path, string $names) : ?Finder {
    $path = str_replace(self::GROUP_PATTERN, '*', $path);
    $finder = new Finder();
    try {
        $finder->depth(0)
            ->in($path)
            ->files()
            ->name($names)
            ->sortByExtension();
    } catch (\Throwable) {
        $this->logger
            ->warning('Invalid icon path in source: @source', [
            '@source' => $path,
        ]);
        return NULL;
    }
    if (!$finder->hasResults()) {
        $this->logger
            ->warning('No icon found in source: @source', [
            '@source' => $path,
        ]);
        return NULL;
    }
    return $finder;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.