コード例 #1
0
        protected override Task <ValidationResult> Validate(Stream packageStream)
        {
            ValidationResult result = new ValidationResult();

            JObject apiapp = GetJObject(packageStream, ApiAppMetadata);

            if (apiapp == null)
            {
                result.Errors.Add(string.Format("required file '{0}' is missing from package", ApiAppMetadata));
            }
            else
            {
                result.PackageIdentity = ValidationHelpers.ValidateIdentity(apiapp, result.Errors);

                //CheckRequiredProperty(apiapp, errors, "description");
                ValidationHelpers.CheckRequiredProperty(apiapp, result.Errors, "title");
                ValidationHelpers.CheckRequiredProperty(apiapp, result.Errors, "summary");
                ValidationHelpers.CheckRequiredProperty(apiapp, result.Errors, "author");
                ValidationHelpers.CheckRequiredProperty(apiapp, result.Errors, "namespace");
            }

            //CheckRequiredFile(packageStream, result.Errors, "content/metadata/icons/small-icon.png");
            //CheckRequiredFile(packageStream, result.Errors, "content/metadata/icons/medium-icon.png");
            //CheckRequiredFile(packageStream, result.Errors, "content/metadata/icons/large-icon.png");
            //CheckRequiredFile(packageStream, result.Errors, "content/metadata/icons/hero-icon.png");
            //CheckRequiredFile(packageStream, result.Errors, "content/metadata/icons/wide-icon.png");

            return(Task.FromResult(result));
        }
コード例 #2
0
        async Task <ValidationResult> Validate(Stream requestStream)
        {
            ValidationResult result = new ValidationResult();

            JObject metadata;

            using (StreamReader reader = new StreamReader(requestStream))
            {
                try
                {
                    metadata = JObject.Parse(await reader.ReadToEndAsync());
                    result.PackageIdentity = ValidationHelpers.ValidateIdentity(metadata, result.Errors);
                }
                catch (FormatException)
                {
                    result.Errors.Add("request could not be parsed as JSON");
                }
            }

            return(result);
        }