private MemoryStream GeneratePlist()
{
NSDictionary root = new NSDictionary();
NSArray plCatalogs = GetCatalogs();
NSArray plConditionals = GetConditionals();
NSArray plIncludedManifests = GetIncludedManifests();
NSArray plManagedInstalls = GetManagedInstalls();
NSArray plManagedUninstalls = GetManagedUninstalls();
NSArray plManagedUpdates = GetManagedUpdates();
NSArray plOptionalInstalls = GetOptionlInstalls();
if (plCatalogs.Count > 0) root.Add("catalogs", plCatalogs);
if (plConditionals.Count > 0) root.Add("conditional_items", plConditionals);
if (plIncludedManifests.Count > 0) root.Add("included_manifests", plIncludedManifests);
if (plManagedInstalls.Count > 0) root.Add("managed_installs", plManagedInstalls);
if (plManagedUninstalls.Count > 0) root.Add("managed_uninstalls", plManagedUninstalls);
if (plManagedUpdates.Count > 0) root.Add("managed_updates", plManagedUpdates);
if (plOptionalInstalls.Count > 0) root.Add("optional_installs", plOptionalInstalls);
var rdr = new MemoryStream();
try
{
PropertyListParser.SaveAsXml(root, rdr);
}
catch (Exception ex)
{
Logger.Log(ex.Message);
}
return rdr;
}