public void ExecuteQueue() { //UpdateList(true); QueueCommandCollection collection = QueueCommandCollection.Load(); // close all MP processes without message box, because executing the queue is called from within MP from GUI plugin which warns the user already if (collection.Items.Count > 0) { Util.KillAllMediaPortalProcesses(true); } foreach (QueueCommand item in collection.Items) { switch (item.CommandEnum) { case CommandEnum.Install: { PackageClass packageClass = MpeCore.MpeInstaller.KnownExtensions.Get(item.TargetId, item.TargetVersion. ToString()); if (packageClass == null) { continue; } splashScreen.SetInfo("Installing " + packageClass.GeneralInfo.Name); string newPackageLoacation = ExtensionUpdateDownloader.GetPackageLocation(packageClass, Client_DownloadProgressChanged, Client_DownloadFileCompleted); InstallFile(newPackageLoacation, true, false); } break; case CommandEnum.Uninstall: { PackageClass packageClass = MpeCore.MpeInstaller.InstalledExtensions.Get(item.TargetId); if (packageClass == null) { continue; } splashScreen.SetInfo("UnInstalling " + packageClass.GeneralInfo.Name); UnInstall dlg = new UnInstall(); dlg.Execute(packageClass, true); } break; default: break; } } collection.Items.Clear(); collection.Save(); }
public void ExecuteQueue() { //UpdateList(true); QueueCommandCollection collection = QueueCommandCollection.Load(); foreach (QueueCommand item in collection.Items) { switch (item.CommandEnum) { case CommandEnum.Install: { PackageClass packageClass = MpeCore.MpeInstaller.KnownExtensions.Get(item.TargetId, item.TargetVersion. ToString()); if (packageClass == null) { continue; } splashScreen.SetInfo("Installing " + packageClass.GeneralInfo.Name); string newPackageLoacation = GetPackageLocation(packageClass); InstallFile(newPackageLoacation, true, false); } break; case CommandEnum.Uninstall: { PackageClass packageClass = MpeCore.MpeInstaller.InstalledExtensions.Get(item.TargetId); if (packageClass == null) { continue; } splashScreen.SetInfo("UnInstalling " + packageClass.GeneralInfo.Name); UnInstall dlg = new UnInstall(); dlg.Execute(packageClass, true); } break; default: break; } } collection.Items.Clear(); collection.Save(); }