Puli\Manager\Api\Repository\PathMapping::makeAbsolute PHP Method

makeAbsolute() private method

private makeAbsolute ( $relativePath, Puli\Manager\Api\Module\Module $containingModule, ModuleList $modules )
$containingModule Puli\Manager\Api\Module\Module
$modules Puli\Manager\Api\Module\ModuleList
    private function makeAbsolute($relativePath, Module $containingModule, ModuleList $modules)
    {
        // Reference to install path of other module
        if ('@' !== $relativePath[0] || false === ($pos = strpos($relativePath, ':'))) {
            return $containingModule->getInstallPath() . '/' . $relativePath;
        }
        $refModuleName = substr($relativePath, 1, $pos - 1);
        if (!$modules->contains($refModuleName)) {
            throw new NoSuchModuleException(sprintf('The module "%s" referenced in the resource path "%s" was not ' . 'found. Maybe the module is not installed?', $refModuleName, $relativePath));
        }
        $refModule = $modules->get($refModuleName);
        return $refModule->getInstallPath() . '/' . substr($relativePath, $pos + 1);
    }