Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. GitLabDriver.php

function GitLabDriver::determineOrigin

Parameters

array<string> $configuredDomains:

array<string> $urlParts:

string $portNumber:

Return value

string|false

2 calls to GitLabDriver::determineOrigin()
GitLabDriver::initialize in vendor/composer/composer/src/Composer/Repository/Vcs/GitLabDriver.php
Extracts information from the repository url.
GitLabDriver::supports in vendor/composer/composer/src/Composer/Repository/Vcs/GitLabDriver.php
Uses the config `gitlab-domains` to see if the driver supports the url for the repository given.

File

vendor/composer/composer/src/Composer/Repository/Vcs/GitLabDriver.php, line 617

Class

GitLabDriver
Driver for GitLab API, use the Git driver for local checkouts.

Namespace

Composer\Repository\Vcs

Code

private static function determineOrigin(array $configuredDomains, string $guessedDomain, array &$urlParts, ?string $portNumber) {
    $guessedDomain = strtolower($guessedDomain);
    if (in_array($guessedDomain, $configuredDomains) || null !== $portNumber && in_array($guessedDomain . ':' . $portNumber, $configuredDomains)) {
        if (null !== $portNumber) {
            return $guessedDomain . ':' . $portNumber;
        }
        return $guessedDomain;
    }
    if (null !== $portNumber) {
        $guessedDomain .= ':' . $portNumber;
    }
    while (null !== ($part = array_shift($urlParts))) {
        $guessedDomain .= '/' . $part;
        if (in_array($guessedDomain, $configuredDomains) || null !== $portNumber && in_array(Preg::replace('{:\\d+}', '', $guessedDomain), $configuredDomains)) {
            return $guessedDomain;
        }
    }
    return false;
}
RSS feed
Powered by Drupal