From 259d889ce39d037aec5f35173059651912ee387f Mon Sep 17 00:00:00 2001 From: MarkusGordathian Date: Sun, 26 Feb 2017 23:01:11 -0800 Subject: [PATCH] Added GetPrecondition() to ModuleInfo and CommandInfo --- src/Discord.Net.Commands/Info/CommandInfo.cs | 3 +++ src/Discord.Net.Commands/Info/ModuleInfo.cs | 3 +++ 2 files changed, 6 insertions(+) diff --git a/src/Discord.Net.Commands/Info/CommandInfo.cs b/src/Discord.Net.Commands/Info/CommandInfo.cs index 031d37581..fe325d8fb 100644 --- a/src/Discord.Net.Commands/Info/CommandInfo.cs +++ b/src/Discord.Net.Commands/Info/CommandInfo.cs @@ -63,6 +63,9 @@ namespace Discord.Commands _action = builder.Callback; } + public TPrecondition GetPrecondition() where TPrecondition : PreconditionAttribute => + Preconditions.FirstOrDefault(x => x is TPrecondition) as TPrecondition; + public async Task CheckPreconditionsAsync(ICommandContext context, IDependencyMap map = null) { if (map == null) diff --git a/src/Discord.Net.Commands/Info/ModuleInfo.cs b/src/Discord.Net.Commands/Info/ModuleInfo.cs index a2094df65..3b1b843ae 100644 --- a/src/Discord.Net.Commands/Info/ModuleInfo.cs +++ b/src/Discord.Net.Commands/Info/ModuleInfo.cs @@ -20,6 +20,9 @@ namespace Discord.Commands public ModuleInfo Parent { get; } public bool IsSubmodule => Parent != null; + public TPrecondition GetPrecondition() where TPrecondition : PreconditionAttribute => + Preconditions.FirstOrDefault(x => x is TPrecondition) as TPrecondition; + internal ModuleInfo(ModuleBuilder builder, CommandService service, ModuleInfo parent = null) { Service = service;