mirror of
https://github.com/zoriya/octokit.net.git
synced 2026-06-04 11:24:44 +00:00
Implement methods to Create, Update, Delete contents
This commit is contained in:
@@ -2,6 +2,7 @@ using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using Octokit.Models.Request;
|
||||
|
||||
namespace Octokit
|
||||
{
|
||||
@@ -91,6 +92,39 @@ namespace Octokit
|
||||
return ApiConnection.GetHtml(ApiUrls.RepositoryReadme(owner, name), null);
|
||||
}
|
||||
|
||||
public Task<CreatedContent> CreateFile(string owner, string name, string path, CreateFileRequest request)
|
||||
{
|
||||
Ensure.ArgumentNotNullOrEmptyString(owner, "owner");
|
||||
Ensure.ArgumentNotNullOrEmptyString(name, "name");
|
||||
Ensure.ArgumentNotNullOrEmptyString(path, "path");
|
||||
Ensure.ArgumentNotNull(request, "request");
|
||||
|
||||
var createUrl = ApiUrls.RepositoryContent(owner, name, path);
|
||||
return ApiConnection.Put<CreatedContent>(createUrl, request);
|
||||
}
|
||||
|
||||
public Task<CreatedContent> UpdateFile(string owner, string name, string path, UpdateFileRequest request)
|
||||
{
|
||||
Ensure.ArgumentNotNullOrEmptyString(owner, "owner");
|
||||
Ensure.ArgumentNotNullOrEmptyString(name, "name");
|
||||
Ensure.ArgumentNotNullOrEmptyString(path, "path");
|
||||
Ensure.ArgumentNotNull(request, "request");
|
||||
|
||||
var updateUrl = ApiUrls.RepositoryContent(owner, name, path);
|
||||
return ApiConnection.Put<CreatedContent>(updateUrl, request);
|
||||
}
|
||||
|
||||
public Task DeleteFile(string owner, string name, string path, DeleteFileRequest request)
|
||||
{
|
||||
Ensure.ArgumentNotNullOrEmptyString(owner, "owner");
|
||||
Ensure.ArgumentNotNullOrEmptyString(name, "name");
|
||||
Ensure.ArgumentNotNullOrEmptyString(path, "path");
|
||||
Ensure.ArgumentNotNull(request, "request");
|
||||
|
||||
var deleteUrl = ApiUrls.RepositoryContent(owner, name, path);
|
||||
return ApiConnection.Delete(deleteUrl, request);
|
||||
}
|
||||
|
||||
private async Task<DirectoryContent> FindContent(string owner, string name, string path)
|
||||
{
|
||||
var pathParts = path.Split(new[] { '/' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
|
||||
Reference in New Issue
Block a user