mirror of
https://github.com/zoriya/octokit.net.git
synced 2025-12-19 21:55:12 +00:00
Add GetArchiveLink Observable client
This commit is contained in:
@@ -24,6 +24,45 @@ namespace Octokit.Reactive
|
||||
/// <returns></returns>
|
||||
IObservable<string> GetReadmeHtml(string owner, string name);
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <returns></returns>
|
||||
IObservable<string> GetArchiveLink(string owner, string name);
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <param name="archiveFormat">The format of the archive. Can be either tarball or zipball</param>
|
||||
/// <returns></returns>
|
||||
IObservable<string> GetArchiveLink(string owner, string name, ArchiveFormat archiveFormat);
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <param name="archiveFormat">The format of the archive. Can be either tarball or zipball</param>
|
||||
/// <param name="reference">A valid Git reference.</param>
|
||||
/// <returns></returns>
|
||||
IObservable<string> GetArchiveLink(string owner, string name, ArchiveFormat archiveFormat, string reference);
|
||||
|
||||
/// <summary>
|
||||
/// Returns the contents of a file or directory in a repository.
|
||||
/// </summary>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Reactive.Threading.Tasks;
|
||||
using Microsoft.SqlServer.Server;
|
||||
using Octokit.Reactive.Internal;
|
||||
|
||||
namespace Octokit.Reactive
|
||||
@@ -49,6 +50,57 @@ namespace Octokit.Reactive
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <returns></returns>
|
||||
public IObservable<string> GetArchiveLink(string owner, string name)
|
||||
{
|
||||
return GetArchiveLink(owner, name, ArchiveFormat.Tarball, string.Empty);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <param name="archiveFormat">The format of the archive. Can be either tarball or zipball</param>
|
||||
/// <returns></returns>
|
||||
public IObservable<string> GetArchiveLink(string owner, string name, ArchiveFormat archiveFormat)
|
||||
{
|
||||
return GetArchiveLink(owner, name, archiveFormat, String.Empty);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// This method will return a 302 to a URL to download a tarball or zipball archive for a repository.
|
||||
/// Please make sure your HTTP framework is configured to follow redirects or you will need to use the
|
||||
/// Location header to make a second GET request.
|
||||
/// Note: For private repositories, these links are temporary and expire quickly.
|
||||
/// </summary>
|
||||
/// <remarks>https://developer.github.com/v3/repos/contents/#get-archive-link</remarks>
|
||||
/// <param name="owner">The owner of the repository</param>
|
||||
/// <param name="name">The name of the repository</param>
|
||||
/// <param name="archiveFormat">The format of the archive. Can be either tarball or zipball</param>
|
||||
/// <param name="reference">A valid Git reference.</param>
|
||||
/// <returns></returns>
|
||||
public IObservable<string> GetArchiveLink(string owner, string name, ArchiveFormat archiveFormat, string reference)
|
||||
{
|
||||
Ensure.ArgumentNotNullOrEmptyString(owner, "owner");
|
||||
Ensure.ArgumentNotNullOrEmptyString(name, "name");
|
||||
|
||||
return _client.Repository.Content.GetArchiveLink(owner, name, archiveFormat, reference).ToObservable();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Returns the contents of a file or directory in a repository.
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user