private void Work()
 {
     _duplicates          = new List <Duplicate>();
     _xmlParserObservable = XmlParserFactory.CreateInstance(_sourceFile);
     _xmlParserObservable.AddObserver(this);
     _xmlParserObservable.Parse(_document);
     _completeCallback?.Invoke(this);
 }
 void FillItems(XmlParserFactory parser)
 {
     itemsPanel.Children.Clear();
     //fill simple items
     itemsPanel.Children.Add(parser.GetSimpleItemsControl());
     //fill element items
     //itemsPanel.Children.Add(parser.GetElementItemsControl());
     itemsPanel.Children.Add(parser.GetElementItemsControl());
 }
        [ValidateInput(false)]//Security Warning: Unsafe, can lead to XSS
        public ActionResult Parse(string data, int parser)
        {
            var model = new XmlViewModel();

            model.Data   = data;
            model.Parser = (XmlParserClassTypeEnum)parser;

            var factory   = new XmlParserFactory();
            var xmlParser = factory.GetXmlParser((XmlEnums.XmlParserTypeEnum)parser);

            model.Output = xmlParser.ParseXml(data);

            return(View("Index", model));
        }
 void BindModel(odm.ui.activities.ConfigureAnalyticView.ModuleDescriptor model)
 {
     xparser = new XmlParserFactory(model.config, model.configDescription, model.schema);
     FillItems(xparser);
 }