internal override bool TryParse(ResolutionResult resolutionResult, out AddinResolution result) { result = new NewOrUpdatedAddinResolution(); bool enabled; AddinHeaderResolution addinHeader; if (!AddinHeader.TryParse(resolutionResult, result, out enabled, out addinHeader)) { return(false); } List <ExtensionPointResolution> extensionPoints = null; List <ExtensionBuilderResolutionGroup> extensionBuilderGroups = null; if (ExtensionSchema != null && !ExtensionSchema.TryParse(resolutionResult, result, out extensionPoints, out extensionBuilderGroups)) { return(false); } List <ExtensionResolutionGroup> extensionGroups = null; if (Extensions != null && !Extensions.TryParse(resolutionResult, result, out extensionGroups)) { return(false); } AddinActivatorResolution addinActivator = null; if (AddinActivator != null && !AddinActivator.TryParse(resolutionResult, result, out addinActivator)) { return(false); } result.Enabled = enabled; result.AddinHeader = addinHeader; result.ManifestFile = ManifestFile; result.ExtensionBuilderGroups = extensionBuilderGroups; result.ExtensionPoints = extensionPoints; result.ExtensionGroups = extensionGroups; result.AddinActivator = addinActivator; if (AssemblyFiles != null) { result.Assemblies = new List <AssemblyResolution>(AssemblyFiles.Count); foreach (var assemblyFile in AssemblyFiles) { result.Assemblies.Add(AssemblyResolution.CreateAddinAssembly(result, assemblyFile)); } } if (DataFiles != null) { result.DataFiles = new List <DataFileResolution>(DataFiles.Count); foreach (var dataFile in DataFiles) { result.DataFiles.Add(dataFile); } } return(true); }
internal bool TryParse(IMessageDialog dialog, out AddinResolution result) { result = new NewAddinResolution(); AddinHeaderResolution addinHeader; if (!AddinHeader.TryParse(dialog, result, out addinHeader)) { return(false); } List <ExtensionPointResolution> extensionPoints = null; List <ExtensionBuilderResolutionGroup> extensionBuilderGroups = null; if (ExtensionDeclaration != null && !ExtensionDeclaration.TryParse(dialog, result, out extensionPoints, out extensionBuilderGroups)) { return(false); } List <ExtensionResolutionGroup> extensionGroups = null; if (ExtensionImplementation != null && !ExtensionImplementation.TryParse(dialog, result, out extensionGroups)) { return(false); } result.AddinHeader = addinHeader; result.ManifestFile = ManifestFile; result.ExtensionBuilderGroups = extensionBuilderGroups; result.ExtensionPoints = extensionPoints; result.ExtensionGroups = extensionGroups; result.RunningStatus = addinHeader.Enabled ? AddinRunningStatus.Enabled : AddinRunningStatus.Disabled; if (AssemblyFiles != null) { result.Assemblies = new List <AssemblyResolution>(AssemblyFiles.Count); foreach (var assemblyFile in AssemblyFiles) { result.Assemblies.Add(AssemblyResolution.CreateAddinAssembly(result, assemblyFile)); } } if (DataFiles != null) { result.DataFiles = new List <DataFileResolution>(DataFiles.Count); foreach (var dataFile in DataFiles) { result.DataFiles.Add(dataFile); } } return(true); }