Exemplo n.º 1
0
        private void btnBuildDoc_Click(object sender, RoutedEventArgs e)
        {
            try
            {
                DocsBuilderEventArgs args = new DocsBuilderEventArgs(RepositoryRoot, (LogLevel)cbLogLevel.SelectedValue);
                cts = new CancellationTokenSource();
                args.CancellationToken     = cts.Token;
                args.JDKFolder             = tbJDKFolder.Text;
                args.JDKTarget             = (JDKVersion)cbTarget.SelectedValue;
                args.SourceFolder          = tbDestinationFolder.Text;
                args.SplitFolderByAssembly = cbEnableSplitFolder.IsChecked.Value;
                args.AssembliesToUse       = AssemblyDataCollection.CreateList(AssemblyDataCollection);
                args.CommitVersion         = tbCommitVersion.Text;

                if (cbExportToFile.IsChecked.Value)
                {
                    export(args);
                    if (MessageBox.Show("Continue operation?", string.Empty, MessageBoxButton.YesNo, MessageBoxImage.Question, MessageBoxResult.Yes) == MessageBoxResult.No)
                    {
                        return;
                    }
                }

                commandPanel.IsEnabled = false;
                btnStop.Visibility     = Visibility.Visible;
                Task.Factory.StartNew(JavaBuilder.GenerateDocs, args);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
            }
        }
Exemplo n.º 2
0
        public static void GenerateDocs(object o)
        {
            bool failed = false;
            DocsBuilderEventArgs args = o as DocsBuilderEventArgs;

            CancellationToken = args.CancellationToken;
            logLevel          = args.LogLevel;
            DateTime dtStart   = DateTime.Now;
            string   reportStr = string.Empty;

            try
            {
                if (string.IsNullOrEmpty(args.CommitVersion))
                {
                    throw new ArgumentException("Commit version must be set when docs are generated.");
                }

                if (!Path.IsPathRooted(args.SourceFolder))
                {
                    args.SourceFolder = Path.Combine(args.RootFolder, args.SourceFolder);
                }

                if (!Path.IsPathRooted(args.JDKFolder))
                {
                    args.JDKFolder = Path.Combine(args.RootFolder, args.JDKFolder);
                }

                var    srcRootFolder     = Path.Combine(args.SourceFolder, Const.FileNameAndDirectory.SourceDirectory);
                string destinationFolder = Path.Combine(args.SourceFolder, Const.FileNameAndDirectory.DocsDirectory);
                var    classes           = CreateSourceListAndGenerateDocs(args.JDKFolder, args.JDKTarget, args.RootFolder, srcRootFolder, destinationFolder, args.CommitVersion, (args.AssembliesToUse == null) ? CreateFolderList(srcRootFolder) : args.AssembliesToUse, Timeout.Infinite);
                reportStr = string.Format("Javadoc of {0} classes done in {1}.", classes, DateTime.Now - dtStart);
            }
            catch (OperationCanceledException ex)
            {
                reportStr = string.Format("Error {0}", ex.Message);
                AppendToConsole(LogLevel.Error, reportStr);
            }
            catch (Exception ex)
            {
                reportStr = string.Format("Error {0}", ex.Message);
                AppendToConsole(LogLevel.Error, reportStr);
                failed = true;
            }
            finally
            {
                EndOperationHandler?.Invoke(null, new EndOperationEventArgs(reportStr, failed));
            }
        }