Contents

Extends AbstractPackage

GitHub API Repositories Contents class for the Joomla Framework.

These API methods let you retrieve the contents of files within a repository as Base64 encoded content. See media types for requesting raw or other formats.

link
since

1.0

package

Joomla Framework

Methods

__construct

Constructor.

__construct(\Joomla\Registry\Registry options = null, \Joomla\Http\Http client = null) : mixed
inherited
since

1.0

Arguments

options

\Joomla\Registry\RegistryGitHub options object.

client

\Joomla\Http\HttpThe HTTP client object.

Response

mixed

__get

Magic method to lazily create API objects

__get(string name) : \Joomla\Github\AbstractPackage
inherited
since

1.0

throws

\InvalidArgumentException

Arguments

name

stringName of property to retrieve

Response

\Joomla\Github\AbstractPackageGitHub API package object.

create

Create a file.

create(string owner, string repo, string path, string message, string content, string branch = 'master', string authorName = '', string authorEmail = '', string committerName = '', string committerEmail = '') : object

This method creates a new file in a repository.

Optional Parameters The author section is optional and is filled in with the committer information if omitted. If the committer information is omitted, the authenticated user’s information is used.

You must provide values for both name and email, whether you choose to use author or committer. Otherwise, you’ll receive a 500 status code.

since

1.0

throws

\UnexpectedValueException

Arguments

owner

stringThe owner of the repository.

repo

stringThe repository name.

path

stringThe content path.

message

stringThe commit message.

content

stringThe new file content, Base64 encoded.

branch

stringThe branch name. If not provided, uses the repository’s default branch (usually master).

authorName

stringThe name of the author of the commit

authorEmail

stringThe email of the author of the commit

committerName

stringThe name of the committer of the commit

committerEmail

stringThe email of the committer of the commit

Response

object

delete

Delete a file.

delete(string owner, string repo, string path, string message, string sha, string branch = 'master', string authorName = '', string authorEmail = '', string committerName = '', string committerEmail = '') : object

This method deletes a file in a repository.

since

1.0

throws

\UnexpectedValueException

Arguments

owner

stringThe owner of the repository.

repo

stringThe repository name.

path

stringThe content path.

message

stringThe commit message.

sha

stringThe blob SHA of the file being replaced.

branch

stringThe branch name. If not provided, uses the repository’s default branch (usually master).

authorName

stringThe name of the author of the commit

authorEmail

stringThe email of the author of the commit

committerName

stringThe name of the committer of the commit

committerEmail

stringThe email of the committer of the commit

Response

object

fetchUrl

Method to build and return a full request URL for the request. This method will add appropriate pagination details if necessary and also prepend the API url to have a complete URL for the request.

fetchUrl(string path, int page, int limit) : \Joomla\Uri\Uri
inherited
since

1.0

Arguments

path

stringURL to inflect

page

intPage to request

limit

intNumber of results to return per page

Response

\Joomla\Uri\Uri

get

Get contents.

get(string owner, string repo, string path, string ref = '') : object

This method returns the contents of any file or directory in a repository.

since

1.0

Arguments

owner

stringThe name of the owner of the GitHub repository.

repo

stringThe name of the GitHub repository.

path

stringThe content path.

ref

stringThe String name of the Commit/Branch/Tag. Defaults to master.

Response

object

getReadme

Get the README.

getReadme(string owner, string repo, string ref = '') : object

This method returns the preferred README for a repository.

since

1.0

throws

\UnexpectedValueException

Arguments

owner

stringThe name of the owner of the GitHub repository.

repo

stringThe name of the GitHub repository.

ref

stringThe String name of the Commit/Branch/Tag. Defaults to master.

Response

object

processResponse

Process the response and decode it.

processResponse(\Joomla\Http\Response response, int expectedCode = 200) : mixed
inherited
since

1.0

throws

\Joomla\Http\Exception\UnexpectedResponseException

Arguments

response

\Joomla\Http\ResponseThe response.

expectedCode

intThe expected "good" code.

Response

mixed

update

Update a file.

update(string owner, string repo, string path, string message, string content, string sha, string branch = 'master', string authorName = '', string authorEmail = '', string committerName = '', string committerEmail = '') : object

This method updates a file in a repository.

Optional Parameters The author section is optional and is filled in with the committer information if omitted. If the committer information is omitted, the authenticated user’s information is used.

You must provide values for both name and email, whether you choose to use author or committer. Otherwise, you’ll receive a 500 status code.

since

1.0

throws

\UnexpectedValueException

Arguments

owner

stringThe owner of the repository.

repo

stringThe repository name.

path

stringThe content path.

message

stringThe commit message.

content

stringThe new file content, Base64 encoded.

sha

stringThe blob SHA of the file being replaced.

branch

stringThe branch name. If not provided, uses the repository’s default branch (usually master).

authorName

stringThe name of the author of the commit

authorEmail

stringThe email of the author of the commit

committerName

stringThe name of the committer of the commit

committerEmail

stringThe email of the committer of the commit

Response

object

Properties

options

Options for the GitHub object.

inherited
since

1.0

Type(s)

\Joomla\Registry\Registry

client

The HTTP client object to use in sending HTTP requests.

inherited
since

1.0

Type(s)

\Joomla\Http\Http

package

The package the object resides in

inherited
since

1.0

Type(s)

string

hookEvents

Array containing the allowed hook events

inherited
since

1.5.2

link
note

From 1.4.0 to 1.5.1 this was named $events, it was renamed due to naming conflicts with package subclasses

Type(s)

array