Exemple #1
0
        private static void ReadExtractionItemAttributes(ExtractionItem extractionItem, XmlReader reader, WebsiteConfig config)
        {
            extractionItem.Name  = XmlReaderExtensions.GetAttribute(reader, "name", "default");
            extractionItem.Value = reader.GetAttribute("value");

            extractionItem.SetExtractionLocation(
                reader.GetAttribute("location"),
                reader.GetAttribute("location_type", ExtractionLocation.ExtractionLocationTypes.InnerText),
                reader.GetAttribute("include_child_nodes", true)
                );

            extractionItem.SetExtractionContext(
                reader.GetAttribute("context"),
                reader.GetAttribute("context_document_type", config.CrawlingSettings.DocumentType)
                );

            extractionItem.DependsOn = reader.GetAttribute <string>("depends_on", null)?.Split(new[] { ',', ';', '|' }, StringSplitOptions.RemoveEmptyEntries);
        }
 public bool TryMaterialize(XmlReader reader, out ImportProductCategory result)
 {
     result = XmlReaderExtensions.CreateItemWithCheck <ImportProductCategory>(reader, "product.category.");
     while (reader.Read())
     {
         if ((reader.NodeType == XmlNodeType.Element) && (reader.Depth == 1))
         {
             switch (reader.Name)
             {
             case "child_asset_rel":
                 result.ChildrenItemsInternal.Add(new AssetRelation {
                     RelatedId = reader.GetAttribute("child_asset"), Key = reader.GetAttribute("key"), Sort = reader.GetAttributeAsNullableInt("sorting")
                 });
                 break;
             }
         }
     }
     return(true);
 }
Exemple #3
0
 /// <summary>
 /// Load object from xml stream.
 /// </summary>
 /// <param name="a_stream"></param>
 protected virtual void Load(Stream a_stream)
 {
     XmlReaderExtensions.ReadXml(a_stream, (reader) => ReadXml(reader));
 }
 public bool TryMaterialize(XmlReader reader, out ImportProduct result)
 {
     result = XmlReaderExtensions.CreateItemWithCheck <ImportProduct>(reader, "product.");
     return(true);
 }