protected YamlValidationService(ResourceLoader resourceLoader, YamlValidator yamlValidator, TagResolver.TagResolver[] tagResolvers)
 {
     this._resourceLoader = resourceLoader;
     this._yamlValidator  = yamlValidator;
     this._errorMessage   = new List <ValidationResult>();
     this._tagResolvers   = tagResolvers;
 }
Exemple #2
0
        private async Task YamlCommand(string cmd)
        {
            int start = cmd.IndexOf(YAML_START);
            int end   = cmd.IndexOf(YAML_END, start + 3);

            if (start == -1 || end == -1 || end == start)
            {
                return;
            }

            string errMsg    = string.Empty;
            string substring = cmd.Substring(start, (end - start));

            string errorMessage = string.Empty;
            bool   result       = YamlValidator.ValidateYaml(substring, out errorMessage);

            // mentioned users
            string mentionedUsers = base.MentionedUsers();
            var    embed          = new EmbedBuilder();

            if (result == true)
            {
                embed.WithTitle(Constants.EMOJI_THUMBSUP);
                embed.WithColor(Helper.GetRandomColor());
                embed.AddField(THE_COMMAND, mentionedUsers + Constants.GOOD_YAML);
            }
            else
            {
                embed.WithTitle(Constants.EMOJI_THUMBSDOWN);
                embed.WithColor(Color.DarkRed);
                embed.AddField(THE_COMMAND, mentionedUsers +
                               string.Format(Constants.INVALID_YAML, errorMessage));
            }
            await ReplyAsync(string.Empty, false, embed);
        }
Exemple #3
0
        public static async Task ReactToYaml(string content, SocketCommandContext context)
        {
            if (!(content.Contains(YAML_START) || content.Contains(YAML_END)))
            {
                return;
            }

            int start = content.IndexOf(YAML_START);
            int end   = content.IndexOf(YAML_END, start + 3);

            if (start == -1 || end == -1 || end == start)
            {
                return;
            }

            string errMsg    = string.Empty;
            string substring = content.Substring(start, (end - start));
            bool   yamlCheck = YamlValidator.ValidateYaml(substring, out errMsg);

            if (yamlCheck)
            {
                var okEmoji = new Emoji(GOOD_EMOJI);
                await context.Message.AddReactionAsync(okEmoji);
            }
            else
            {
                var errorEmoji = new Emoji(BAD_EMOJI);
                await context.Message.AddReactionAsync(errorEmoji);
            }
        }
        //    public RamlValidationService(ResourceLoader resourceLoader, RamlDocumentValidator ramlDocumentValidator, TagResolver.TagResolver[] tagResolvers)
        //{
        //    base(resourceLoader, ramlDocumentValidator, DefaultResolver(tagResolvers));
        //    GetValidator().setResourceLoader(resourceLoader);
        //}

        //private static TagResolver.TagResolver[] DefaultResolver(TagResolver.TagResolver[] tagResolvers)
        //{
        //    TagResolver.TagResolver[] defaultResolvers = new TagResolver.TagResolver[] {
        //            new IncludeResolver(),
        //            new PojoValidatorTagResolver()
        //    };
        //    return (TagResolver.TagResolver[]) ArrayUtils.addAll(defaultResolvers, tagResolvers);
        //}

        ////@Override
        //protected List<ValidationResult> PreValidation(MappingNode root)
        //{
        //    List<ValidationResult> validationResults = GetValidator().getTemplateResolver().init(root);
        //    validationResults.addAll(GetValidator().getMediaTypeResolver().beforeDocumentStart(root));
        //    return validationResults;
        //}

        //public static RamlValidationService createDefault()
        //{
        //    return createDefault(new DefaultResourceLoader());
        //}

        //public static RamlValidationService createDefault(ResourceLoader loader, NodeRuleFactory nodeRuleFactory, TagResolver.TagResolver[] tagResolvers)
        //{
        //    return createDefault(loader, new NodeRuleFactory(), tagResolvers);
        //}

        //public static RamlValidationService createDefault(ResourceLoader loader, NodeRuleFactory nodeRuleFactory, TagResolver.TagResolver[] tagResolvers)
        //{
        //    return new RamlValidationService(loader, new RamlDocumentValidator(nodeRuleFactory), tagResolvers);
        //}

        ////@Override
        //protected RamlDocumentValidator GetValidator()
        //{
        //    return base.getValidator();
        //}
        protected RamlValidationService(ResourceLoader resourceLoader, YamlValidator yamlValidator, TagResolver.TagResolver[] tagResolvers) : base(resourceLoader, yamlValidator, tagResolvers)
        {
        }