public function locate($name, $currentPath = null, $first = true)
    {
        foreach ($this->locators as $locator) {
            if ($locator->supports($name)) {
                return $locator->locate($name, $currentPath, $first);
            }
        }

        throw new InvalidArgumentException(sprintf(
            'The file "%s" could not be found.',
            $name
        ));
    }