/// <summary> /// Creates a new status for the given deployment. Users with push access can create deployment /// statuses for a given deployment. /// </summary> /// <remarks> /// http://developer.github.com/v3/repos/deployments/#create-a-deployment-status /// </remarks> /// <param name="repositoryId">The Id of the repository.</param> /// <param name="deploymentId">The id of the deployment.</param> /// <param name="newDeploymentStatus">The new deployment status to create.</param> public Task <DeploymentStatus> Create(long repositoryId, int deploymentId, NewDeploymentStatus newDeploymentStatus) { Ensure.ArgumentNotNull(newDeploymentStatus, nameof(newDeploymentStatus)); return(ApiConnection.Post <DeploymentStatus>(ApiUrls.DeploymentStatuses(repositoryId, deploymentId), newDeploymentStatus, AcceptHeaders.Concat(AcceptHeaders.DeploymentApiPreview, AcceptHeaders.DeploymentStatusesPreview))); }
/// <summary> /// Gets all the statuses for the given deployment. Any user with pull access to a repository can /// view deployments. /// </summary> /// <remarks> /// http://developer.github.com/v3/repos/deployments/#list-deployment-statuses /// </remarks> /// <param name="repositoryId">The Id of the repository.</param> /// <param name="deploymentId">The id of the deployment.</param> /// <param name="options">Options for changing the API response</param> public Task <IReadOnlyList <DeploymentStatus> > GetAll(long repositoryId, int deploymentId, ApiOptions options) { Ensure.ArgumentNotNull(options, nameof(options)); return(ApiConnection.GetAll <DeploymentStatus>(ApiUrls.DeploymentStatuses(repositoryId, deploymentId), null, AcceptHeaders.Concat(AcceptHeaders.DeploymentApiPreview, AcceptHeaders.DeploymentStatusesPreview), options)); }
/// <summary> /// Gets all the various events that have occurred around an issue or pull request. /// </summary> /// <remarks> /// https://developer.github.com/v3/issues/timeline/#list-events-for-an-issue /// </remarks> /// <param name="repositoryId">The Id of the repository</param> /// <param name="number">The issue number</param> /// <param name="options">Options for changing the API response</param> public Task <IReadOnlyList <TimelineEventInfo> > GetAllForIssue(long repositoryId, int number, ApiOptions options) { Ensure.ArgumentNotNull(options, nameof(options)); return(ApiConnection.GetAll <TimelineEventInfo>(ApiUrls.IssueTimeline(repositoryId, number), null, AcceptHeaders.Concat(AcceptHeaders.IssueTimelineApiPreview, AcceptHeaders.IssueEventsApiPreview), options)); }
/// <summary> /// Creates a new status for the given deployment. Users with push access can create deployment /// statuses for a given deployment. /// </summary> /// <remarks> /// http://developer.github.com/v3/repos/deployments/#create-a-deployment-status /// </remarks> /// <param name="owner">The owner of the repository.</param> /// <param name="name">The name of the repository.</param> /// <param name="deploymentId">The id of the deployment.</param> /// <param name="newDeploymentStatus">The new deployment status to create.</param> public Task <DeploymentStatus> Create(string owner, string name, int deploymentId, NewDeploymentStatus newDeploymentStatus) { Ensure.ArgumentNotNullOrEmptyString(owner, nameof(owner)); Ensure.ArgumentNotNullOrEmptyString(name, nameof(name)); Ensure.ArgumentNotNull(newDeploymentStatus, nameof(newDeploymentStatus)); return(ApiConnection.Post <DeploymentStatus>(ApiUrls.DeploymentStatuses(owner, name, deploymentId), newDeploymentStatus, AcceptHeaders.Concat(AcceptHeaders.DeploymentApiPreview, AcceptHeaders.DeploymentStatusesPreview))); }
/// <summary> /// Gets all the statuses for the given deployment. Any user with pull access to a repository can /// view deployments. /// </summary> /// <remarks> /// http://developer.github.com/v3/repos/deployments/#list-deployment-statuses /// </remarks> /// <param name="owner">The owner of the repository.</param> /// <param name="name">The name of the repository.</param> /// <param name="deploymentId">The id of the deployment.</param> /// <param name="options">Options for changing the API response</param> public Task <IReadOnlyList <DeploymentStatus> > GetAll(string owner, string name, int deploymentId, ApiOptions options) { Ensure.ArgumentNotNullOrEmptyString(owner, nameof(owner)); Ensure.ArgumentNotNullOrEmptyString(name, nameof(name)); Ensure.ArgumentNotNull(options, nameof(options)); return(ApiConnection.GetAll <DeploymentStatus>(ApiUrls.DeploymentStatuses(owner, name, deploymentId), null, AcceptHeaders.Concat(AcceptHeaders.DeploymentApiPreview, AcceptHeaders.DeploymentStatusesPreview), options)); }
/// <summary> /// Gets all the various events that have occurred around an issue or pull request. /// </summary> /// <remarks> /// https://developer.github.com/v3/issues/timeline/#list-events-for-an-issue /// </remarks> /// <param name="owner">The owner of the repository</param> /// <param name="repo">The name of the repository</param> /// <param name="number">The issue number</param> /// <param name="options">Options for changing the API repsonse</param> public Task <IReadOnlyList <TimelineEventInfo> > GetAllForIssue(string owner, string repo, int number, ApiOptions options) { Ensure.ArgumentNotNullOrEmptyString(owner, nameof(owner)); Ensure.ArgumentNotNullOrEmptyString(repo, nameof(repo)); Ensure.ArgumentNotNull(options, nameof(options)); return(ApiConnection.GetAll <TimelineEventInfo>(ApiUrls.IssueTimeline(owner, repo, number), null, AcceptHeaders.Concat(AcceptHeaders.IssueTimelineApiPreview, AcceptHeaders.IssueEventsApiPreview), options)); }
/// <summary> /// Gets the specified repository. /// </summary> /// <remarks> /// See the <a href="http://developer.github.com/v3/repos/#get">API documentation</a> for more information. /// </remarks> /// <param name="repositoryId">The Id of the repository</param> /// <exception cref="ApiException">Thrown when a general API error occurs.</exception> /// <returns>A <see cref="Repository"/></returns> public Task <Repository> Get(long repositoryId) { return(ApiConnection.Get <Repository>(ApiUrls.Repository(repositoryId), null, AcceptHeaders.Concat(AcceptHeaders.SquashCommitPreview, AcceptHeaders.LicensesApiPreview))); }
/// <summary> /// Gets the specified repository. /// </summary> /// <remarks> /// See the <a href="http://developer.github.com/v3/repos/#get">API documentation</a> for more information. /// </remarks> /// <param name="owner">The owner of the repository</param> /// <param name="name">The name of the repository</param> /// <exception cref="ApiException">Thrown when a general API error occurs.</exception> /// <returns>A <see cref="Repository"/></returns> public Task <Repository> Get(string owner, string name) { Ensure.ArgumentNotNullOrEmptyString(owner, "owner"); Ensure.ArgumentNotNullOrEmptyString(name, "name"); return(ApiConnection.Get <Repository>(ApiUrls.Repository(owner, name), null, AcceptHeaders.Concat(AcceptHeaders.SquashCommitPreview, AcceptHeaders.LicensesApiPreview))); }
/// <summary> /// Updates the specified repository with the values given in <paramref name="update"/> /// </summary> /// <param name="repositoryId">The Id of the repository</param> /// <param name="update">New values to update the repository with</param> /// <returns>The updated <see cref="T:Octokit.Repository"/></returns> public Task <Repository> Edit(long repositoryId, RepositoryUpdate update) { Ensure.ArgumentNotNull(update, "update"); return(ApiConnection.Patch <Repository>(ApiUrls.Repository(repositoryId), update, AcceptHeaders.Concat(AcceptHeaders.SquashCommitPreview, AcceptHeaders.LicensesApiPreview))); }
/// <summary> /// Updates the specified repository with the values given in <paramref name="update"/> /// </summary> /// <param name="owner">The owner of the repository</param> /// <param name="name">The name of the repository</param> /// <param name="update">New values to update the repository with</param> /// <returns>The updated <see cref="T:Octokit.Repository"/></returns> public Task <Repository> Edit(string owner, string name, RepositoryUpdate update) { Ensure.ArgumentNotNullOrEmptyString(owner, "owner"); Ensure.ArgumentNotNullOrEmptyString(name, "name"); Ensure.ArgumentNotNull(update, "update"); Ensure.ArgumentNotNull(update.Name, "update.Name"); return(ApiConnection.Patch <Repository>(ApiUrls.Repository(owner, name), update, AcceptHeaders.Concat(AcceptHeaders.SquashCommitPreview, AcceptHeaders.LicensesApiPreview))); }