public UpgradePage(SolutionUpgradePageViewMode viewMode, string solutionFolder, string solutionName, List <string> filesToShow)
        {
            InitializeComponent();

            mViewMode       = viewMode;
            mSolutionFolder = solutionFolder;
            mSolutionName   = solutionName;
            mFilesToShow    = filesToShow;

            SetControls();
        }
        private async void Upgrade(object sender, RoutedEventArgs e)
        {
            try
            {
                xProcessingImage.Visibility    = Visibility.Visible;
                BackupFolderTextBox.IsReadOnly = true;
                BrowseButton.IsEnabled         = false;

                GingerCore.General.DoEvents();

                string backupFolderPath = BackupFolderTextBox.Text;
                //make sure back directory exist if not create
                if (!Directory.Exists(backupFolderPath))
                {
                    MakeSurePathExistforBakFile(backupFolderPath + @"\");
                }

                await Task.Run(() => { DoUpgrade(backupFolderPath + @"\"); });

                if (mFailedFiles.Count == 0)
                {
                    Reporter.ToUser(eUserMsgKey.StaticInfoMessage, "Upgrade ended successfully.");
                    _pageGenericWin.Close();
                }
                else
                {
                    Reporter.ToUser(eUserMsgKey.StaticWarnMessage, "Upgrade failed for some of the files.");
                    mViewMode = SolutionUpgradePageViewMode.FailedUpgradeSolution;
                    SetControls();
                }
            }
            catch (Exception ex)
            {
                Reporter.ToLog(eLogLevel.ERROR, "Failed to upgrade the solution files", ex);
                Reporter.ToUser(eUserMsgKey.StaticErrorMessage, "Error occurred during upgrade, details: " + ex.Message);
                _pageGenericWin.Close();
            }
            finally
            {
                xProcessingImage.Visibility    = Visibility.Collapsed;
                BackupFolderTextBox.IsReadOnly = false;
                BrowseButton.IsEnabled         = true;
            }
        }
Exemple #3
0
 public void ShowUpgradeSolutionItems(SolutionUpgradePageViewMode upgradeSolution, string solutionFolder, string solutionName, List <string> list)
 {
     Console.WriteLine("ShowUpgradeSolutionItems - " + solutionFolder);
 }
Exemple #4
0
 public void ShowUpgradeSolutionItems(SolutionUpgradePageViewMode upgradeSolution, string solutionFolder, string solutionName, List <string> list)
 {
     throw new NotImplementedException();
 }
        public void ShowUpgradeSolutionItems(SolutionUpgradePageViewMode upgradeSolution, string solutionFolder, string solutionName, List <string> list)
        {
            UpgradePage solutionUpgradePage = new UpgradePage(SolutionUpgradePageViewMode.UpgradeSolution, solutionFolder, solutionName, list);

            solutionUpgradePage.ShowAsWindow();
        }
Exemple #6
0
        private void Upgrade(object sender, RoutedEventArgs e)
        {
            try
            {
                xProcessingImage.Visibility = Visibility.Visible;
                GingerCore.General.DoEvents();
                NewRepositorySerializer newSerilizer = new NewRepositorySerializer();
                mFailedFiles = new List <string>();
                string backupFolderPath = BackupFolderTextBox.Text;
                //make sure back direcroty exist if not create
                if (!Directory.Exists(backupFolderPath))
                {
                    MakeSurePathExistforBakFile(backupFolderPath + @"\");
                }

                // now do the upgrade file by file
                foreach (string filePathToConvert in mFilesToShow)
                {
                    string filePath = filePathToConvert;
                    //remove info extention
                    if (filePath.Contains("-->"))
                    {
                        filePath = filePath.Remove(filePath.IndexOf("-->"));
                    }

                    //do upgrade
                    try
                    {
                        //first copy to backup folder
                        string BakFile = filePath.Replace(mSolutionFolder, BackupFolderTextBox.Text + @"\");
                        MakeSurePathExistforBakFile(BakFile);
                        System.IO.File.Copy(filePath, BakFile, true);

                        //make sure backup was created
                        if (File.Exists(BakFile) == true)
                        {
                            //Do Upgrade by unserilize and serlize the item using new serilizer
                            //unserilize
                            string             itemXML    = File.ReadAllText(filePath);
                            RepositoryItemBase itemObject = (RepositoryItemBase)NewRepositorySerializer.DeserializeFromText(itemXML);
                            itemObject.FilePath = filePath;
                            //serlize
                            newSerilizer.SaveToFile(itemObject, filePath);
                        }
                        else
                        {
                            mFailedFiles.Add(filePathToConvert);
                        }
                    }
                    catch (Exception ex)
                    {
                        Reporter.ToLog(eLogLevel.WARN, string.Format("Failed to upgrade the solution file '{0}'", filePath), ex);
                        mFailedFiles.Add(filePathToConvert);
                    }
                }

                if (mFailedFiles.Count == 0)
                {
                    Reporter.ToUser(eUserMsgKeys.StaticInfoMessage, "Upgrade ended successfully.");
                    _pageGenericWin.Close();
                }
                else
                {
                    Reporter.ToUser(eUserMsgKeys.StaticWarnMessage, "Upgrade failed for some of the files.");
                    mViewMode = SolutionUpgradePageViewMode.FailedUpgradeSolution;
                    SetControls();
                }
            }
            catch (Exception ex)
            {
                Reporter.ToLog(eLogLevel.ERROR, "Failed to upgrade the solution files", ex);
                Reporter.ToUser(eUserMsgKeys.StaticErrorMessage, "Error occurred during upgrade, details: " + ex.Message);
                _pageGenericWin.Close();
            }
            finally
            {
                xProcessingImage.Visibility = Visibility.Collapsed;
            }
        }