Task <BranchGroupType> LoadBranchType([Source] string name, [FromServices] Loaders loaders)
 {
     return(loaders.LoadBranchGroup(name)
            .ContinueWith(r =>
     {
         return r.Result?.BranchType ?? BranchGroupType.Feature;
     }));
 }
 Task <UpstreamMergePolicy> LoadUpstreamMergePolicy([Source] string name, [FromServices] Loaders loaders)
 {
     return(loaders.LoadBranchGroup(name)
            .ContinueWith(r =>
     {
         return r.Result?.UpstreamMergePolicy ?? UpstreamMergePolicy.None;
     }));
 }
Ejemplo n.º 3
0
        async Task <ImmutableList <string> > GetRoles([FromServices] Loaders loaders, [FromServices] IAuthorizationService authorizationService, [FromServices] IHttpContextAccessor httpContext)
        {
            await Authorize(authorizationService, httpContext, Auth.PolicyNames.Administrate).ConfigureAwait(false);

            return(await loaders.GetRoles().ConfigureAwait(false));
        }
Ejemplo n.º 4
0
        async Task <ImmutableList <GitRef> > AllGitRefs([FromServices] Loaders loaders, [FromServices] IAuthorizationService authorizationService, [FromServices] IHttpContextAccessor httpContext)
        {
            await Authorize(authorizationService, httpContext, Auth.PolicyNames.Read);

            return(await loaders.LoadAllGitRefs().ConfigureAwait(false));
        }
Ejemplo n.º 5
0
 Task <ImmutableList <string> > LoadUsers([Source] string role, [FromServices] Loaders loaders)
 {
     return(loaders.LoadUsers(role));
 }
Ejemplo n.º 6
0
 Task <ImmutableList <string> > LoadRoles([Source] string username, [FromServices] Loaders loaders)
 {
     return(loaders.LoadRoles(username));
 }
 Task <GitRef?> LatestBranch([Source] string name, [FromServices] Loaders loaders)
 {
     return(loaders.LoadLatestBranch(name));
 }
 Task <ImmutableList <GitRef> > ActualBranches([Source] string name, [FromServices] Loaders loaders)
 {
     return(loaders.LoadActualBranches(name));
 }
 Task <ImmutableList <string> > UpstreamBranches([Source] string name, [FromServices] Loaders loaders)
 {
     return(loaders.LoadUpstreamBranches(name));
 }
        async Task <ImmutableList <string> > DownstreamBranches([Source] string name, [FromServices] Loaders loaders)
        {
            var result = await loaders.LoadDownstreamBranches(name).ConfigureAwait(false);

            return(result);
        }
Ejemplo n.º 11
0
 private Task <ImmutableList <GitService.PullRequest> > PullRequestsInto([Source] GitRef gitRef, [FromArgument] string target, [FromArgument] bool?system, [FromServices] Loaders loaders, ResolveFieldContext resolveContext)
 {
     return(loaders.LoadPullRequests(
                source: gitRef.Name,
                target: target,
                includeReviews: resolveContext.FieldAst.SelectionSet.Selections.OfType <global::GraphQL.Language.AST.Field>().Any(field => field.Name == "reviews"),
                authorMode: system == null ? PullRequestAuthorMode.All
             : system == true ? PullRequestAuthorMode.SystemOnly
             : PullRequestAuthorMode.NonSystemOnly
                ));
 }
Ejemplo n.º 12
0
 private Task <ImmutableList <GitService.CommitStatus> > GetStatuses([Source] GitRef gitRef, [FromServices] Loaders loaders)
 {
     return(loaders.LoadBranchStatus(gitRef.Commit));
 }
Ejemplo n.º 13
0
        private Task <string> MergeBase([FromArgument] string commitish, [FromArgument] CommitishKind kind, [Source] GitRef gitRef, [FromServices] Loaders loaders)
        {
            switch (kind)
            {
            case CommitishKind.CommitHash:
                return(loaders.GetMergeBaseOfCommits(gitRef.Commit, commitish));

            case CommitishKind.RemoteBranch:
                return(loaders.GetMergeBaseOfCommitAndRemoteBranch(gitRef.Commit, commitish));

            case CommitishKind.LastestFromGroup:
                return(loaders.GetMergeBaseOfCommitAndGroup(gitRef.Commit, commitish));

            default:
                return(Task.FromResult <string>(null));
            }
        }