private ModuleDefinitionInfo ImportManifest(string manifest) { ModuleDefinitionInfo moduleDefinition = null; try { var _Installer = new Installer(manifest, Request.MapPath("."), true); if (_Installer.IsValid) { //Reset Log _Installer.InstallerInfo.Log.Logs.Clear(); //Install _Installer.Install(); if (_Installer.IsValid) { DesktopModuleInfo desktopModule = DesktopModuleController.GetDesktopModuleByPackageID(_Installer.InstallerInfo.PackageID); if (desktopModule != null && desktopModule.ModuleDefinitions.Count > 0) { foreach (KeyValuePair<string, ModuleDefinitionInfo> kvp in desktopModule.ModuleDefinitions) { moduleDefinition = kvp.Value; break; } } } else { UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("InstallError.Text", LocalResourceFile), ModuleMessage.ModuleMessageType.RedError); phInstallLogs.Controls.Add(_Installer.InstallerInfo.Log.GetLogsTable()); } } else { UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("InstallError.Text", LocalResourceFile), ModuleMessage.ModuleMessageType.RedError); phInstallLogs.Controls.Add(_Installer.InstallerInfo.Log.GetLogsTable()); } } catch (Exception exc) { Exceptions.LogException(exc); UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("ImportControl.ErrorMessage", LocalResourceFile), ModuleMessage.ModuleMessageType.RedError); } return moduleDefinition; }
private ModuleDefinitionInfo ImportManifest() { ModuleDefinitionInfo moduleDefinition = null; try { var folder = PathUtils.Instance.RemoveTrailingSlash(GetSourceFolder()); var manifest = Server.MapPath("~/DesktopModules/" + folder + "/" + cboFile.SelectedValue); var installer = new Installer(manifest, Request.MapPath("."), true); if (installer.IsValid) { installer.InstallerInfo.Log.Logs.Clear(); installer.Install(); if (installer.IsValid) { var desktopModule = DesktopModuleController.GetDesktopModuleByPackageID(installer.InstallerInfo.PackageID); if (desktopModule != null && desktopModule.ModuleDefinitions.Count > 0) { foreach (var kvp in desktopModule.ModuleDefinitions) { moduleDefinition = kvp.Value; break; // TODO: might not be correct. Was : Exit For } } } else { UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("InstallError.Text", LocalResourceFile), UI.Skins.Controls.ModuleMessage.ModuleMessageType.RedError); phInstallLogs.Controls.Add(installer.InstallerInfo.Log.GetLogsTable()); } } else { UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("InstallError.Text", LocalResourceFile), UI.Skins.Controls.ModuleMessage.ModuleMessageType.RedError); phInstallLogs.Controls.Add(installer.InstallerInfo.Log.GetLogsTable()); } } catch (Exception exc) { Exceptions.LogException(exc); UI.Skins.Skin.AddModuleMessage(this, Localization.GetString("ImportControl.ErrorMessage", LocalResourceFile), UI.Skins.Controls.ModuleMessage.ModuleMessageType.RedError); } return moduleDefinition; }