Ejemplo n.º 1
0
        /// <inheritdoc />
        public override int Run(Args arguments)
        {
            if (arguments.Help)
            {
                return((int)GeneratorExitCode.Success);
            }

            ContentHashingUtilities.SetDefaultHashType();

            using (SetupEventListener(EventLevel.Informational))
            {
                var loggingContext = new LoggingContext(nameof(PipGraphFragmentGenerator));

                AppDomain.CurrentDomain.UnhandledException +=
                    (sender, eventArgs) =>
                {
                    HandleUnhandledFailure(loggingContext, eventArgs.ExceptionObject as Exception);
                };
                ExceptionUtilities.UnexpectedException +=
                    (exception) =>
                {
                    HandleUnhandledFailure(loggingContext, exception);
                };
                TaskScheduler.UnobservedTaskException +=
                    (sender, eventArgs) =>
                {
                    HandleUnhandledFailure(loggingContext, eventArgs.Exception);
                };

                if (!PipGraphFragmentGenerator.TryGeneratePipGraphFragment(
                        loggingContext,
                        m_pathTable,
                        arguments.CommandLineConfig,
                        arguments.PipGraphFragmentGeneratorConfig))
                {
                    return((int)GeneratorExitCode.Failed);
                }

                return((int)GeneratorExitCode.Success);
            }
        }
Ejemplo n.º 2
0
        /// <inheritdoc />
        public override int Run(Args arguments)
        {
            if (arguments.Help)
            {
                return(0);
            }

            ContentHashingUtilities.SetDefaultHashType();

            using (SetupEventListener(EventLevel.Informational))
            {
                if (!PipGraphFragmentGenerator.TryGeneratePipGraphFragment(
                        m_pathTable,
                        arguments.CommandLineConfig,
                        arguments.PipGraphFragmentGeneratorConfig))
                {
                    return(1);
                }

                return(0);
            }
        }