public static MDDataProcessor Create(IV8MetadataContainer Container, SerializedList Content) { MDDataProcessor NewMDObject = new MDDataProcessor(); NewMDObject.Container = Container; StaticMDIdentifiers ids = new StaticMDIdentifiers(); ids.AttributesCollection = "ec6bb5e5-b7a8-4d75-bec9-658107a699cf"; ids.TablesCollection = "2bcef0d1-0981-11d6-b9b8-0050bae0a95d"; ids.FormsCollection = "d5b0e5ed-256d-401c-9c36-f630cafd8a62"; ids.TemplatesCollection = "3daea016-69b7-4ed4-9453-127911372fe6"; ReadFromStream(NewMDObject, Content, ids); return(NewMDObject); }
public static MDReport Create(IV8MetadataContainer Container, SerializedList Content) { MDReport NewReport = new MDReport(); NewReport.Container = Container; StaticMDIdentifiers ids = new StaticMDIdentifiers(); ids.AttributesCollection = "7e7123e0-29e2-11d6-a3c7-0050bae0a776"; ids.TablesCollection = "b077d780-29e2-11d6-a3c7-0050bae0a776"; ids.FormsCollection = "a3b368c0-29e2-11d6-a3c7-0050bae0a776"; ids.TemplatesCollection = "3daea016-69b7-4ed4-9453-127911372fe6"; ReadFromStream(NewReport, Content, ids); return(NewReport); }
protected static void ReadFromStream(MDObjectClass NewMDObject, SerializedList ProcData, StaticMDIdentifiers ids) { SerializedList Content = ProcData.DrillDown(3); NewMDObject.ReadStringsBlock(Content.DrillDown(3)); const int start = 3; int ChildCount = Int32.Parse(Content.Items[2].ToString()); for (int i = 0; i < ChildCount; ++i) { SerializedList Collection = (SerializedList)Content.Items[start + i]; String CollectionID = Collection.Items[0].ToString(); int ItemsCount = Int32.Parse(Collection.Items[1].ToString()); for (int itemIndex = 2; itemIndex < (2 + ItemsCount); ++itemIndex) { if (CollectionID == ids.AttributesCollection) { NewMDObject.Attributes.Add(new MDAttribute((SerializedList)Collection.Items[itemIndex])); } else if (CollectionID == ids.TablesCollection) { NewMDObject.Tables.Add(new MDTable((SerializedList)Collection.Items[itemIndex])); } else if (CollectionID == ids.FormsCollection) { NewMDObject.Forms.Add(MDForm.Create(NewMDObject.Container, Collection.Items[itemIndex].ToString())); } else if (CollectionID == ids.TemplatesCollection) { NewMDObject.Templates.Add(new MDTemplate(NewMDObject.Container, Collection.Items[itemIndex].ToString())); } } } }