Files
octokit.net/Octokit.Reactive/Clients/IObservableGistCommentsClient.cs
2013-12-01 23:42:04 +01:00

56 lines
2.6 KiB
C#

using System;
using System.Diagnostics.CodeAnalysis;
using System.Reactive;
namespace Octokit.Reactive
{
public interface IObservableGistCommentsClient
{
/// <summary>
/// Gets a single comment by gist- and comment id.
/// </summary>
/// <remarks>http://developer.github.com/v3/gists/comments/#get-a-single-comment</remarks>
/// <param name="gistId">The id of the gist</param>
/// <param name="commentId">The id of the comment</param>
/// <returns>IObservable{GistComment}.</returns>
[SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get",
Justification = "Method makes a network request")]
IObservable<GistComment> Get(int gistId, int commentId);
/// <summary>
/// Gets all comments for the gist with the specified id.
/// </summary>
/// <remarks>http://developer.github.com/v3/gists/comments/#list-comments-on-a-gist</remarks>
/// <param name="gistId">The id of the gist</param>
/// <returns>IObservable{GistComment}.</returns>
IObservable<GistComment> GetForGist(int gistId);
/// <summary>
/// Creates a comment for the gist with the specified id.
/// </summary>
/// <remarks>http://developer.github.com/v3/gists/comments/#create-a-comment</remarks>
/// <param name="gistId">The id of the gist</param>
/// <param name="comment">The body of the comment</param>
/// <returns>IObservable{GistComment}.</returns>
IObservable<GistComment> Create(int gistId, string comment);
/// <summary>
/// Updates the comment with the specified gist- and comment id.
/// </summary>
/// <remarks>http://developer.github.com/v3/gists/comments/#edit-a-comment</remarks>
/// <param name="gistId">The id of the gist</param>
/// <param name="commentId">The id of the comment</param>
/// <param name="comment">The updated body of the comment</param>
/// <returns>IObservable{GistComment}.</returns>
IObservable<GistComment> Update(int gistId, int commentId, string comment);
/// <summary>
/// Deletes the comment with the specified gist- and comment id.
/// </summary>
/// <remarks>http://developer.github.com/v3/gists/comments/#delete-a-comment</remarks>
/// <param name="gistId">The id of the gist</param>
/// <param name="commentId">The id of the comment</param>
/// <returns>IObservable{Unit}.</returns>
IObservable<Unit> Delete(int gistId, int commentId);
}
}