class JGithubPackageDataTrees extends JGithubPackage

GitHub API Data Trees class for the Joomla Platform.

Methods

__construct( Registry $options = null, JGithubHttp $client = null)

Constructor.

__get( string $name)

Magic method to lazily create API objects

object
get( string $owner, string $repo, string $sha)

Get a Tree

object
getRecursively( string $owner, string $repo, string $sha)

Get a Tree Recursively

object
create( string $owner, string $repo, array $tree, string $base_tree = '')

Create a Tree.

Details

__construct( Registry $options = null, JGithubHttp $client = null)

Constructor.

Parameters

Registry $options GitHub options object.
JGithubHttp $client The HTTP client object.

JGithubPackage __get( string $name)

Magic method to lazily create API objects

Parameters

string $name Name of property to retrieve

Return Value

JGithubPackage GitHub API package object.

Exceptions

RuntimeException

object get( string $owner, string $repo, string $sha)

Get a Tree

Parameters

string $owner The name of the owner of the GitHub repository.
string $repo The name of the GitHub repository.
string $sha The SHA1 value to set the reference to.

Return Value

object

object getRecursively( string $owner, string $repo, string $sha)

Get a Tree Recursively

Parameters

string $owner The name of the owner of the GitHub repository.
string $repo The name of the GitHub repository.
string $sha The SHA1 value to set the reference to.

Return Value

object

object create( string $owner, string $repo, array $tree, string $base_tree = '')

Create a Tree.

The tree creation API will take nested entries as well. If both a tree and a nested path modifying that tree are specified, it will overwrite the contents of that tree with the new path contents and write a new tree out.

Parameters fir the tree:

tree.path String of the file referenced in the tree tree.mode String of the file mode - one of 100644 for file (blob), 100755 for executable (blob), 040000 for subdirectory (tree), 160000 for submodule (commit) or 120000 for a blob that specifies the path of a symlink tree.type String of blob, tree, commit tree.sha String of SHA1 checksum ID of the object in the tree tree.content String of content you want this file to have - GitHub will write this blob out and use that SHA for this entry. Use either this or tree.sha

Parameters

string $owner The name of the owner of the GitHub repository.
string $repo The name of the GitHub repository.
array $tree Array of Hash objects (of path, mode, type and sha) specifying a tree structure
string $base_tree The SHA1 of the tree you want to update with new data.

Return Value

object