public static ItemArchetype CreateFromXml(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { DomainObjects.ItemArchetype retval = new DomainObjects.ItemArchetype(); retval.id = n.GetAttributeOrDefault("id", null); retval.ikey = n.GetAttributeOrDefault("ikey", null); retval.type = n.GetAttributeOrDefault("type", null); retval.label = n.GetAttributeOrDefault("label", null); retval.description = n.GetAttributeOrDefault("description", null); if (n.HasAttribute("consumable")) { retval.consumable = n.GetAttribute("consumable").ToLower() == "true"; } if (n.HasAttribute("sellable")) { retval.sellable = n.GetAttribute("sellable").ToLower() == "true"; } retval.stats = ixcrm_parser.ParseItemStatList(n.SelectSingleNode("./stats") as System.Xml.XmlElement); retval.price = ixcrm_parser.ParseModifierList(n.SelectSingleNode("./price") as System.Xml.XmlElement); retval.tags = ixcrm_parser.ParseTagList(n.SelectSingleNode("./tags") as System.Xml.XmlElement); System.Xml.XmlNodeList property_nodes = n.SelectNodes("./properties/property"); foreach (System.Xml.XmlElement property_node in property_nodes) { Roar.DomainObjects.ItemArchetypeProperty property = new Roar.DomainObjects.ItemArchetypeProperty(); property.ikey = property_node.GetAttribute("ikey"); property.value = property_node.GetAttribute("value"); retval.properties.Add(property); } return(retval); }
public static AppstoreShopEntry CreateFromXml(System.Xml.XmlNode n, Roar.DataConversion.IXCRMParser ixcrm_parser) { AppstoreShopEntry retval = new AppstoreShopEntry(); retval.product_identifier = n.Attributes["product_identifier"].Value; retval.label = n.Attributes["label"].Value; retval.modifiers = ixcrm_parser.ParseModifierList(n.SelectSingleNode("modifiers") as System.Xml.XmlElement); return(retval); }
public static MailPackage CreateFromXml(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { MailPackage retval = new MailPackage(); retval.id = n.GetAttribute("id"); retval.type = n.GetAttribute("type"); retval.sender_id = n.GetAttribute("sender_id"); retval.sender_name = n.GetAttribute("sender_name"); retval.message = n.GetAttribute("message"); System.Xml.XmlNodeList item_nodes = n.SelectNodes("./item"); foreach (System.Xml.XmlElement item_node in item_nodes) { retval.items.Add(InventoryItem.CreateFromXml(item_node, ixcrm_parser)); } retval.tags = ixcrm_parser.ParseTagList(n); retval.modifiers = ixcrm_parser.ParseModifierList(n.SelectSingleNode("./modifiers") as System.Xml.XmlElement); return(retval); }
public static InventoryItem CreateFromXml(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { DomainObjects.InventoryItem retval = new DomainObjects.InventoryItem(); retval.id = n.GetAttribute("id"); retval.ikey = n.GetAttribute("ikey"); retval.type = n.GetAttribute("type"); retval.label = n.GetAttribute("label"); retval.description = n.GetAttribute("description"); if (n.HasAttribute("count") && !System.Int32.TryParse(n.GetAttribute("count"), out retval.count)) { throw new InvalidXMLElementException("Unable to parse count to integer"); } if (n.HasAttribute("consumable")) { retval.consumable = n.GetAttribute("consumable").ToLower() == "true"; } if (n.HasAttribute("sellable")) { retval.sellable = n.GetAttribute("sellable").ToLower() == "true"; } if (n.HasAttribute("equipped")) { retval.equipped = n.GetAttribute("equipped").ToLower() == "true"; } retval.stats = ixcrm_parser.ParseItemStatList(n.SelectSingleNode("./stats") as System.Xml.XmlElement); retval.price = ixcrm_parser.ParseModifierList(n.SelectSingleNode("./price") as System.Xml.XmlElement); retval.tags = ixcrm_parser.ParseTagList(n.SelectSingleNode("./tags") as System.Xml.XmlElement); System.Xml.XmlNodeList property_nodes = n.SelectNodes("./properties/property"); foreach (System.Xml.XmlElement property_node in property_nodes) { Roar.DomainObjects.ItemArchetypeProperty property = new Roar.DomainObjects.ItemArchetypeProperty(); property.ikey = property_node.GetAttribute("ikey"); property.value = property_node.GetAttribute("value"); retval.properties.Add(property); } return(retval); }
public static Task CreateFromXmlCompleteTask(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { DomainObjects.Task retval = new DomainObjects.Task(); retval.ikey = n.SelectSingleNode("./ikey").GetInnerTextOrDefault(null); retval.label = n.SelectSingleNode("./label").GetInnerTextOrDefault(null); retval.description = n.SelectSingleNode("./description").GetInnerTextOrDefault(null); retval.location = n.SelectSingleNode("./location").GetInnerTextOrDefault(null); string masteryLevelString = n.SelectSingleNode("./mastery/@level").GetValueOrDefault(null); if (masteryLevelString == null || masteryLevelString == "") { retval.mastery_level = 0; } else if (!System.Int32.TryParse(masteryLevelString, out retval.mastery_level)) { throw new InvalidXMLElementException("Unable to parse mastery level to integer"); } string masteryProgressString = n.SelectSingleNode("./mastery/@progress").GetValueOrDefault(null); if (masteryProgressString == null || masteryProgressString == "") { retval.mastery_progress = 0; } else if (!System.Int32.TryParse(masteryProgressString, out retval.mastery_progress)) { throw new InvalidXMLElementException("Untable to parse mastery progress to integer"); } retval.costs = ixcrm_parser.ParseCostList(n.SelectSingleNode("./costs") as System.Xml.XmlElement); retval.rewards = ixcrm_parser.ParseModifierList(n.SelectSingleNode("./rewards") as System.Xml.XmlElement); retval.requirements = ixcrm_parser.ParseRequirementList(n.SelectSingleNode("./requires") as System.Xml.XmlElement); retval.tags = ixcrm_parser.ParseTagList(n.SelectSingleNode("./tags") as System.Xml.XmlElement); return(retval); }
public static FacebookShopEntry CreateFromXml(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { FacebookShopEntry retval = new FacebookShopEntry(); retval.ikey = n.GetAttribute("ikey"); retval.description = n.GetAttribute("description"); retval.label = n.GetAttribute("label"); retval.price = n.GetAttribute("price"); retval.product_url = n.GetAttribute("product_url"); retval.image_url = n.GetAttribute("image_url"); System.Xml.XmlNodeList modifier_nodes = n.SelectNodes("./modifiers"); if (modifier_nodes.Count > 0) { retval.modifiers = ixcrm_parser.ParseModifierList(modifier_nodes[0] as System.Xml.XmlElement); } else { retval.modifiers = new List <Modifier>(); } return(retval); }
public static ChromeWebStoreShopEntry CreateFromXml(System.Xml.XmlElement n, Roar.DataConversion.IXCRMParser ixcrm_parser) { ChromeWebStoreShopEntry retval = new ChromeWebStoreShopEntry(); retval.ikey = n.GetAttribute("ikey"); retval.label = n.GetAttribute("label"); retval.description = n.GetAttribute("description"); retval.price = n.GetAttribute("price"); retval.jwt = n.GetAttribute("jwt"); retval.modifiers = ixcrm_parser.ParseModifierList(n.SelectSingleNode("modifiers") as System.Xml.XmlElement); retval.tags = ixcrm_parser.ParseTagList(n.SelectSingleNode("tags") as System.Xml.XmlElement); return(retval); }