mirror of https://github.com/abpframework/abp.git
csharpabpc-sharpframeworkblazoraspnet-coredotnet-coreaspnetcorearchitecturesaasdomain-driven-designangularmulti-tenancy
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
52 lines
1.6 KiB
52 lines
1.6 KiB
using System;
|
|
using JetBrains.Annotations;
|
|
using Volo.Abp;
|
|
using Volo.Docs.GitHub.Documents;
|
|
using Volo.Docs.Projects;
|
|
|
|
namespace Volo.Docs.GitHub.Projects
|
|
{
|
|
public static class ProjectGithubExtensions
|
|
{
|
|
public static string GetGitHubUrl([NotNull] this Project project)
|
|
{
|
|
CheckGitHubProject(project);
|
|
return project.ExtraProperties["GitHubRootUrl"] as string;
|
|
}
|
|
|
|
public static string GetGitHubUrl([NotNull] this Project project, string version)
|
|
{
|
|
return project
|
|
.GetGitHubUrl()
|
|
.Replace("{version}", version);
|
|
}
|
|
|
|
public static void SetGitHubUrl([NotNull] this Project project, string value)
|
|
{
|
|
CheckGitHubProject(project);
|
|
project.ExtraProperties["GitHubRootUrl"] = value;
|
|
}
|
|
|
|
public static string GetGitHubAccessTokenOrNull([NotNull] this Project project)
|
|
{
|
|
CheckGitHubProject(project);
|
|
return project.ExtraProperties["GitHubAccessToken"] as string;
|
|
}
|
|
|
|
public static void SetGitHubAccessToken([NotNull] this Project project, string value)
|
|
{
|
|
CheckGitHubProject(project);
|
|
project.ExtraProperties["GitHubAccessToken"] = value;
|
|
}
|
|
|
|
private static void CheckGitHubProject(Project project)
|
|
{
|
|
Check.NotNull(project, nameof(project));
|
|
|
|
if (project.DocumentStoreType != GithubDocumentStore.Type)
|
|
{
|
|
throw new ApplicationException("Given project has not a Github document store!");
|
|
}
|
|
}
|
|
}
|
|
}
|