Issues

Extends \Joomla\Github\AbstractPackage

GitHub API Issues class for the Joomla Framework.

link

https://developer.github.com/v3/issues

since

1.0

property-read

GitHub API object for assignees.

GitHub API object for comments.

GitHub API object for events.

GitHub API object for labels.

GitHub API object for milestones.

Methods

__construct

Constructor.

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

1.0

Arguments

$options

\Joomla\Registry\RegistryGitHub options object.

$client

\Joomla\Http\HttpThe HTTP client object.

__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 an issue.

create(string $user, string $repo, string $title, string $body = null, string $assignee = null, integer $milestone = null, array<mixed,string> $labels = array(), array<mixed,string> $assignees = array()) : object
since

1.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$title

stringThe title of the new issue.

$body

stringThe body text for the new issue.

$assignee

stringThe login for the GitHub user that this issue should be assigned to.

$milestone

integerThe milestone to associate this issue with.

$labels

array<mixed,string>The labels to associate with this issue.

$assignees

array<mixed,string>The logins for GitHub users to assign to this issue.

Response

object

edit

Edit an issue.

edit(string $user, string $repo, integer $issueId, string $state = null, string $title = null, string $body = null, string $assignee = null, integer $milestone = null, array $labels = null) : object
since

1.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$issueId

integerThe issue number.

$state

stringThe optional new state for the issue. [open, closed]

$title

stringThe title of the new issue.

$body

stringThe body text for the new issue.

$assignee

stringThe login for the GitHub user that this issue should be assigned to.

$milestone

integerThe milestone to associate this issue with.

$labels

arrayThe labels to associate with this issue.

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, integer $page, integer $limit) : string
inherited
since

1.0

note

As of 2.0 this method will return a Joomla\Uri\Uri object

Arguments

$path

stringURL to inflect

$page

integerPage to request

$limit

integerNumber of results to return per page

Response

stringThe request URL.

get

Get a single issue.

get(string $user, string $repo, integer $issueId) : object
since

1.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$issueId

integerThe issue number.

Response

object

getList

List issues.

getList(string $filter = null, string $state = null, string $labels = null, string $sort = null, string $direction = null, \DateTime $since = null, integer $page, integer $limit) : object
since

1.0

throws

\DomainException

Arguments

$filter

stringThe filter type: assigned, created, mentioned, subscribed.

$state

stringThe optional state to filter requests by. [open, closed]

$labels

stringThe list of comma separated Label names. Example: bug,ui,@high.

$sort

stringThe sort order: created, updated, comments, default: created.

$direction

stringThe list direction: asc or desc, default: desc.

$since

\DateTimeOnly issues updated at or after this time are returned.

$page

integerThe page number from which to get items.

$limit

integerThe number of items on a page.

Response

object

getListByRepository

List issues for a repository.

getListByRepository(string $user, string $repo, string $milestone = null, string $state = null, string $assignee = null, string $mentioned = null, string $labels = null, string $sort = null, string $direction = null, \DateTime $since = null, integer $page, integer $limit) : object
since

1.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$milestone

stringThe milestone number, 'none', or *.

$state

stringThe optional state to filter requests by. [open, closed]

$assignee

stringThe assignee name, 'none', or *.

$mentioned

stringThe GitHub user name.

$labels

stringThe list of comma separated Label names. Example: bug,ui,@high.

$sort

stringThe sort order: created, updated, comments, default: created.

$direction

stringThe list direction: asc or desc, default: desc.

$since

\DateTimeOnly issues updated at or after this time are returned.

$page

integerThe page number from which to get items.

$limit

integerThe number of items on a page.

Response

object

lock

Lock an issue.

lock(string $user, string $repo, integer $issueId) : object
since

1.4.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$issueId

integerThe issue number.

Response

object

processResponse

Process the response and decode it.

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

1.0

throws

\Joomla\Http\Exception\UnexpectedResponseException

Arguments

$response

\Joomla\Http\ResponseThe response.

$expectedCode

integerThe expected "good" code.

Response

mixed

unlock

Unlock an issue.

unlock(string $user, string $repo, integer $issueId) : object
since

1.4.0

throws

\DomainException

Arguments

$user

stringThe name of the owner of the GitHub repository.

$repo

stringThe name of the GitHub repository.

$issueId

integerThe issue number.

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\Github\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

https://developer.github.com/webhooks/#events

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

assignees

GitHub API object for assignees.

Type(s)

\Joomla\Github\Package\Issues\Assignees

comments

GitHub API object for comments.

Type(s)

\Joomla\Github\Package\Issues\Comments

events

GitHub API object for events.

Type(s)

\Joomla\Github\Package\Issues\Events

labels

GitHub API object for labels.

Type(s)

\Joomla\Github\Package\Issues\Labels

milestones

GitHub API object for milestones.

Type(s)

\Joomla\Github\Package\Issues\Milestones