Exemple #1
0
        static void Main(string[] args)
        {
            try
            {
                _Arguments = new CommandLineArgumentList(args, StringComparison.CurrentCultureIgnoreCase);

                IXmlDocumentProvider docProvider = null;

                // Initialize our xml document provider
                if (File.Exists("icalvalidSchema.zip"))
                {
                    docProvider = new XmlDocumentZipExtractor("icalvalidSchema.zip");
                }
                else if (Directory.Exists("icalvalidSchema"))
                {
                    docProvider = new LocalXmlDocumentProvider("icalvalidSchema");
                }
                else
                {
                    throw new Exception("A valid schema directory or zip file could not be located!");
                }

                // Setup the language to use for validation/tests
                SetupLanguage(docProvider);
                IValidationRuleset selectedRuleset = LoadRuleset(docProvider);

                if (_Arguments.Contains(_SchemaValidationArgument))
                {
                    SchemaTest(docProvider);
                    LanguageKeyValidation(docProvider);
                }
                else
                {
                    // Determine whether we are performing a self test, or
                    // validating an iCalendar file...
                    if (_Arguments.Contains(_TestArgument))
                    {
                        SelfTest(docProvider, selectedRuleset);
                    }
                    else
                    {
                        ValidateFile(docProvider, selectedRuleset);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Exemple #2
0
        static void Main(string[] args)
        {
            try
            {
                _Arguments = new CommandLineArgumentList(args, StringComparison.CurrentCultureIgnoreCase);

                IXmlDocumentProvider docProvider = null;

                // Initialize our xml document provider
                if (File.Exists("icalvalidSchema.zip"))
                    docProvider = new XmlDocumentZipExtractor("icalvalidSchema.zip");
                else if (Directory.Exists("icalvalidSchema"))
                    docProvider = new LocalXmlDocumentProvider("icalvalidSchema");
                else
                    throw new Exception("A valid schema directory or zip file could not be located!");

                // Setup the language to use for validation/tests
                SetupLanguage(docProvider);
                IValidationRuleset selectedRuleset = LoadRuleset(docProvider);

                if (_Arguments.Contains(_SchemaValidationArgument))
                {
                    SchemaTest(docProvider);
                    LanguageKeyValidation(docProvider);
                }
                else
                {
                    // Determine whether we are performing a self test, or
                    // validating an iCalendar file...
                    if (_Arguments.Contains(_TestArgument))
                    {
                        SelfTest(docProvider, selectedRuleset);
                    }
                    else
                    {
                        ValidateFile(docProvider, selectedRuleset);
                    }
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }
Exemple #3
0
        static void Main(string[] args)
        {
            try
            {
                Debug.Initialize();

                ISerializationSettings settings = SerializationContext.Default.GetService<ISerializationSettings>();
                settings.ParsingMode = ParsingModeType.Loose;
                settings.EnsureAccurateLineNumbers = true;
                settings.StoreExtraSerializationData = true;

                _Arguments = new CommandLineArgumentList(args, StringComparison.CurrentCultureIgnoreCase);

                IXmlDocumentProvider docProvider = null;

                // Initialize our xml document provider
                if (File.Exists("icalvalidSchema.zip"))
                    docProvider = new ZipXmlDocumentProvider("icalvalidSchema.zip");
                else if (Directory.Exists("icalvalidSchema"))
                    docProvider = new DirectoryXmlDocumentProvider("icalvalidSchema");
                else
                    throw new Exception("A valid schema directory or zip file could not be located!");

                IValidationRuleset selectedRuleset = null;
                try
                {
                    // Setup the language to use for validation/tests
                    SetupLanguage(docProvider);
                    selectedRuleset = LoadRuleset(docProvider);
                }
                catch (ValidationRuleLoadException ex)
                {
                    _ValidationRuleLoadException = ex;
                }

                if (_Arguments.Contains(_SchemaValidationArgument))
                {
                    SchemaTest(docProvider);
                    LanguageKeyValidation(docProvider);
                }
                else if (_ValidationRuleLoadException == null)
                {
                    // Determine whether we are performing a self test, or
                    // validating an iCalendar file...
                    if (_Arguments.Contains(_TestArgument))
                    {
                        SelfTest(docProvider, selectedRuleset);
                    }
                    else
                    {
                        ValidateFile(docProvider, selectedRuleset);
                    }
                }
                else
                {
                    Console.WriteLine("The icalvalid schema did not load successfully: " + _ValidationRuleLoadException.Message +
                        Environment.NewLine +
                        Environment.NewLine +
                        "Try 'icalvalid /s' for more information.");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
        }