Composer API
Class

Composer\Repository\Vcs\GitHubDriver

class GitHubDriver extends VcsDriver

Methods

__construct(array $repoConfig, IOInterface $io, Config $config, ProcessExecutor $process = null, RemoteFilesystem $remoteFilesystem = null)

Constructor.

from VcsDriver
array getComposerInformation(string $identifier)

Return the composer.json file information

bool hasComposerFile(string $identifier)

Return true if the repository has a composer file for a given identifier, false otherwise.

from VcsDriver
cleanup()

Performs any cleanup necessary as the driver is not longer needed

from VcsDriver
initialize()

Initializes the driver (git clone, svn checkout, fetch info etc)

getRepositoryUrl()

string getRootIdentifier()

Return the root identifier (trunk, master, default/tip ..)

string getUrl()

Return the URL of the repository

array getSource(string $identifier)

array getDist(string $identifier)

string getFileContent(string $file, string $identifier)

Return the content of $file or null if the file does not exist.

DateTime getChangeDate(string $identifier)

Get the changedate for $identifier.

array getTags()

Return list of tags in the repository

array getBranches()

Return list of branches in the repository

static bool supports(IOInterface $io, Config $config, string $url, bool $deep = false)

Checks if this driver can handle a given url

array|null getRepoData()

Gives back the loaded /repos// result

Details

in VcsDriver at line 60
final public __construct(array $repoConfig, IOInterface $io, Config $config, ProcessExecutor $process = null, RemoteFilesystem $remoteFilesystem = null)

Constructor.

Parameters

array $repoConfig The repository configuration
IOInterface $io The IO instance
Config $config The composer configuration
ProcessExecutor $process Process instance, injectable for mocking
RemoteFilesystem $remoteFilesystem Remote Filesystem, injectable for mocking

at line 143
public array getComposerInformation(string $identifier)

Return the composer.json file information

Parameters

string $identifier Any identifier to a specific branch/tag/commit

Return Value

array containing all infos from the composer.json file

in VcsDriver at line 128
public bool hasComposerFile(string $identifier)

Return true if the repository has a composer file for a given identifier, false otherwise.

Parameters

string $identifier Any identifier to a specific branch/tag/commit

Return Value

bool Whether the repository has a composer file for a given identifier.

in VcsDriver at line 171
public cleanup()

Performs any cleanup necessary as the driver is not longer needed

at line 48
public initialize()

Initializes the driver (git clone, svn checkout, fetch info etc)

at line 68
public getRepositoryUrl()

at line 76
public string getRootIdentifier()

Return the root identifier (trunk, master, default/tip ..)

Return Value

string Identifier

at line 88
public string getUrl()

Return the URL of the repository

Return Value

string

at line 114
public array getSource(string $identifier)

Parameters

string $identifier Any identifier to a specific branch/tag/commit

Return Value

array With type, url and reference keys.

at line 133
public array getDist(string $identifier)

Parameters

string $identifier Any identifier to a specific branch/tag/commit

Return Value

array With type, url reference and shasum keys.

at line 180
public string getFileContent(string $file, string $identifier)

Return the content of $file or null if the file does not exist.

Parameters

string $file
string $identifier

Return Value

string

at line 215
public DateTime getChangeDate(string $identifier)

Get the changedate for $identifier.

Parameters

string $identifier

Return Value

DateTime

at line 230
public array getTags()

Return list of tags in the repository

Return Value

array Tag names as keys, identifiers as values

at line 255
public array getBranches()

Return list of branches in the repository

Return Value

array Branch names as keys, identifiers as values

at line 285
static public bool supports(IOInterface $io, Config $config, string $url, bool $deep = false)

Checks if this driver can handle a given url

Parameters

IOInterface $io IO instance
Config $config current $config
string $url URL to validate/check
bool $deep unless true, only shallow checks (url matching typically) should be done

Return Value

bool

at line 310
public array|null getRepoData()

Gives back the loaded /repos// result

Return Value

array|null