Esempio n. 1
0
 public BuildCommand(IWixToolsetServiceProvider serviceProvider)
 {
     this.ServiceProvider  = serviceProvider;
     this.Messaging        = serviceProvider.GetService <IMessaging>();
     this.ExtensionManager = serviceProvider.GetService <IExtensionManager>();
     this.commandLine      = new CommandLine(this.ServiceProvider, this.Messaging);
 }
Esempio n. 2
0
        /// <summary>
        /// Run the application with the given arguments.
        /// </summary>
        /// <param name="serviceProvider">Service provider to use throughout this execution.</param>
        /// <param name="args">The commandline arguments.</param>
        /// <returns>The number of errors that were found.</returns>
        public int Run(IWixToolsetServiceProvider serviceProvider, string[] args)
        {
            try
            {
                var listener  = serviceProvider.GetService <IMessageListener>();
                var messaging = serviceProvider.GetService <IMessaging>();
                messaging.SetListener(listener);

                var arguments = serviceProvider.GetService <ICommandLineArguments>();
                arguments.Populate(args);

                var commandLine = serviceProvider.GetService <IWixCopCommandLineParser>();
                commandLine.Arguments = arguments;
                var command = commandLine.ParseWixCopCommandLine();

                if (command.ShowLogo)
                {
                    var wixcopAssembly = this.GetType().Assembly;
                    var fv             = FileVersionInfo.GetVersionInfo(wixcopAssembly.Location);

                    Console.WriteLine("WiX Cop version {0}", fv.FileVersion);
                    Console.WriteLine("Copyright (C) .NET Foundation and contributors. All rights reserved.");
                    Console.WriteLine();
                }

                return(command?.Execute() ?? 1);
            }
            catch (Exception e)
            {
                Console.Error.WriteLine("wixcop.exe : fatal error WXCP0001 : {0}\r\n\n\nStack Trace:\r\n{1}", e.Message, e.StackTrace);

                return(1);
            }
        }
Esempio n. 3
0
        public Unbinder(IWixToolsetServiceProvider serviceProvider)
        {
            this.ServiceProvider = serviceProvider;

            var extensionManager = this.ServiceProvider.GetService <IExtensionManager>();

            this.BackendFactories = extensionManager.GetServices <IBackendFactory>();
        }
Esempio n. 4
0
        public CabinetResolver(IWixToolsetServiceProvider serviceProvider, string cabCachePath, IEnumerable <IWindowsInstallerBackendBinderExtension> backendExtensions)
        {
            this.ServiceProvider = serviceProvider;

            this.CabCachePath = cabCachePath;

            this.BackendExtensions = backendExtensions;
        }
Esempio n. 5
0
        public WixCopCommandLineParser(IWixToolsetServiceProvider serviceProvider)
        {
            this.serviceProvider = serviceProvider;

            this.indentationAmount = 4;
            this.searchPatterns    = new List <string>();
            this.showLogo          = true;
        }
Esempio n. 6
0
        internal Resolver(IWixToolsetServiceProvider serviceProvider)
        {
            this.ServiceProvider = serviceProvider;

            this.Messaging = serviceProvider.GetService <IMessaging>();

            this.VariableResolver = serviceProvider.GetService <IVariableResolver>();
        }
Esempio n. 7
0
        /// <summary>
        /// Instantiate a new VariableResolver.
        /// </summary>
        internal VariableResolver(IWixToolsetServiceProvider serviceProvider)
        {
            this.ServiceProvider = serviceProvider;
            this.Messaging       = serviceProvider.GetService <IMessaging>();

            this.locVariables      = new Dictionary <string, BindVariable>();
            this.wixVariables      = new Dictionary <string, BindVariable>();
            this.localizedControls = new Dictionary <string, LocalizedControl>();
        }
Esempio n. 8
0
        public ProcessPayloadsCommand(IWixToolsetServiceProvider serviceProvider, IBackendHelper backendHelper, IEnumerable <WixBundlePayloadSymbol> payloads, PackagingType defaultPackaging, string layoutDirectory)
        {
            this.Messaging = serviceProvider.GetService <IMessaging>();

            this.BackendHelper    = backendHelper;
            this.Payloads         = payloads;
            this.DefaultPackaging = defaultPackaging;
            this.LayoutDirectory  = layoutDirectory;
        }
Esempio n. 9
0
 public CompileCommand(IWixToolsetServiceProvider serviceProvider, IEnumerable <SourceFile> sources, IDictionary <string, string> preprocessorVariables, Platform platform)
 {
     this.ServiceProvider       = serviceProvider;
     this.Messaging             = serviceProvider.GetService <IMessaging>();
     this.ExtensionManager      = serviceProvider.GetService <IExtensionManager>();
     this.SourceFiles           = sources;
     this.PreprocessorVariables = preprocessorVariables;
     this.Platform = platform;
 }
Esempio n. 10
0
        public HeatCommand(string harvestType, IList <IHeatExtension> extensions, IWixToolsetServiceProvider serviceProvider)
        {
            this.Extensions      = extensions;
            this.Messaging       = serviceProvider.GetService <IMessaging>();
            this.ServiceProvider = serviceProvider;

            this.ExtensionType = harvestType;
            this.ExtensionOptions.Add(harvestType);
        }
Esempio n. 11
0
 public HeatCommandLine(IWixToolsetServiceProvider serviceProvider, bool runningInMsBuild)
 {
     this.extensions = new List <HeatExtension> {
         new IIsHeatExtension(), new UtilHeatExtension(), new VSHeatExtension()
     };
     this.messaging        = serviceProvider.GetService <IMessaging>();
     this.runningInMsBuild = runningInMsBuild;
     this.serviceProvider  = serviceProvider;
 }
Esempio n. 12
0
        /// <summary>
        /// Executes the wix command-line interface.
        /// </summary>
        /// <param name="serviceProvider">Service provider to use throughout this execution.</param>
        /// <param name="listener">Listener to use for the messaging system.</param>
        /// <param name="args">Command-line arguments to execute.</param>
        /// <param name="cancellationToken">Cancellation token.</param>
        /// <returns>Returns the application error code.</returns>
        public static Task <int> Run(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string[] args, CancellationToken cancellationToken)
        {
            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var commandLine = serviceProvider.GetService <ICommandLine>();
            var command     = commandLine.CreateCommand(args);

            return(command?.ExecuteAsync(cancellationToken) ?? Task.FromResult(1));
        }
Esempio n. 13
0
 public HeatCommandLine(IWixToolsetServiceProvider serviceProvider, IEnumerable <IHeatExtension> heatExtensions)
 {
     this.extensions = new List <IHeatExtension> {
         new IIsHeatExtension(), new UtilHeatExtension(), new VSHeatExtension()
     };
     if (heatExtensions != null)
     {
         this.extensions.AddRange(heatExtensions);
     }
     this.messaging       = serviceProvider.GetService <IMessaging>();
     this.serviceProvider = serviceProvider;
 }
Esempio n. 14
0
        public ProcessMsiPackageCommand(IWixToolsetServiceProvider serviceProvider, IEnumerable <IBurnBackendBinderExtension> backendExtensions, IntermediateSection section, PackageFacade facade, Dictionary <string, WixBundlePayloadSymbol> payloadSymbols)
        {
            this.Messaging     = serviceProvider.GetService <IMessaging>();
            this.BackendHelper = serviceProvider.GetService <IBackendHelper>();
            this.PathResolver  = serviceProvider.GetService <IPathResolver>();

            this.BackendExtensions = backendExtensions;

            this.AuthoredPayloads = payloadSymbols;
            this.Section          = section;
            this.Facade           = facade;
        }
Esempio n. 15
0
        private Dictionary <string, string> lastCabinetAddedToMediaTable; // Key is First Cabinet Name, Value is Last Cabinet Added in the Split Sequence

        public CreateCabinetsCommand(IWixToolsetServiceProvider serviceProvider, IBackendHelper backendHelper, WixMediaTemplateSymbol mediaTemplate)
        {
            this.fileTransfers = new List <IFileTransfer>();

            this.trackedFiles = new List <ITrackedFile>();

            this.newCabNamesCallBack = this.NewCabNamesCallBack;

            this.ServiceProvider = serviceProvider;

            this.BackendHelper = backendHelper;

            this.MediaTemplate = mediaTemplate;
        }
Esempio n. 16
0
        /// <summary>
        /// Run the application with the given arguments.
        /// </summary>
        /// <param name="serviceProvider">Service provider to use throughout this execution.</param>
        /// <param name="args">The commandline arguments.</param>
        /// <returns>Returns the application error code.</returns>
        public int Run(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string[] args)
        {
            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var arguments = serviceProvider.GetService <ICommandLineArguments>();

            arguments.Populate(args);

            var commandLine = HeatCommandLineFactory.CreateCommandLine(serviceProvider);
            var command     = commandLine.ParseStandardCommandLine(arguments);

            return(command?.Execute() ?? 1);
        }
Esempio n. 17
0
        /// <summary>
        /// Run the application with the given arguments.
        /// </summary>
        /// <param name="serviceProvider">Service provider to use throughout this execution.</param>
        /// <param name="args">The commandline arguments.</param>
        /// <returns>Returns the application error code.</returns>
        public Task <int> Run(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string[] args)
        {
            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var arguments = serviceProvider.GetService <ICommandLineArguments>();

            arguments.Populate(args);

            var commandLine = HeatCommandLineFactory.CreateCommandLine(serviceProvider);
            var command     = commandLine.ParseStandardCommandLine(arguments);

            return(command?.ExecuteAsync(CancellationToken.None) ?? Task.FromResult(1));
        }
Esempio n. 18
0
 public ConvertCommand(IWixToolsetServiceProvider serviceProvider, bool showLogo, bool fixErrors, int indentationAmount, List <string> searchPatterns, bool subDirectories, string settingsFile1, string settingsFile2)
 {
     this.ErrorsAsWarnings     = new HashSet <string>();
     this.ExemptFiles          = new HashSet <string>();
     this.FixErrors            = fixErrors;
     this.IndentationAmount    = indentationAmount;
     this.IgnoreErrors         = new HashSet <string>();
     this.SearchPatternResults = new HashSet <string>();
     this.SearchPatterns       = searchPatterns;
     this.ServiceProvider      = serviceProvider;
     this.SettingsFile1        = settingsFile1;
     this.SettingsFile2        = settingsFile2;
     this.ShowLogo             = showLogo;
     this.SubDirectories       = subDirectories;
 }
Esempio n. 19
0
        protected override void ExecuteCore(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string commandLineString)
        {
            this.Log.LogMessage(MessageImportance.Normal, "heat.exe " + commandLineString);

            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var arguments = serviceProvider.GetService <ICommandLineArguments>();

            arguments.Populate(commandLineString);

            var commandLine = HeatCommandLineFactory.CreateCommandLine(serviceProvider, true);
            var command     = commandLine.ParseStandardCommandLine(arguments);

            command?.Execute();
        }
Esempio n. 20
0
        /// <summary>
        /// Executes the wix command-line interface.
        /// </summary>
        /// <param name="serviceProvider">Service provider to use throughout this execution.</param>
        /// <param name="args">Command-line arguments to execute.</param>
        /// <returns>Returns the application error code.</returns>
        public int Run(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string[] args)
        {
            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var arguments = serviceProvider.GetService <ICommandLineArguments>();

            arguments.Populate(args);

            var commandLine = serviceProvider.GetService <ICommandLine>();

            commandLine.ExtensionManager = CreateExtensionManagerWithStandardBackends(serviceProvider, messaging, arguments.Extensions);
            commandLine.Arguments        = arguments;
            var command = commandLine.ParseStandardCommandLine();

            return(command?.Execute() ?? 1);
        }
Esempio n. 21
0
        /// <summary>
        /// Instantiates a new HeatCore.
        /// </summary>
        /// <param name="serviceProvider">The service provider.</param>
        /// <param name="extensionArgument">The extension argument.</param>
        public HeatCore(IWixToolsetServiceProvider serviceProvider, string extensionArgument)
        {
            this.Messaging = serviceProvider.GetService <IMessaging>();
            var harvesterCore = new HarvesterCore
            {
                ExtensionArgument = extensionArgument,
                Messaging         = this.Messaging,
                ParseHelper       = serviceProvider.GetService <IParseHelper>(),
            };

            this.Harvester = new Harvester
            {
                Core = harvesterCore,
            };
            this.Mutator = new Mutator
            {
                Core = harvesterCore,
            };
        }
Esempio n. 22
0
        protected override void ExecuteCore(IWixToolsetServiceProvider serviceProvider, IMessageListener listener, string commandLineString)
        {
            this.Log.LogMessage(MessageImportance.Normal, "wix.exe " + commandLineString);

            var messaging = serviceProvider.GetService <IMessaging>();

            messaging.SetListener(listener);

            var arguments = serviceProvider.GetService <ICommandLineArguments>();

            arguments.Populate(commandLineString);

            var commandLine = serviceProvider.GetService <ICommandLine>();

            commandLine.ExtensionManager = this.CreateExtensionManagerWithStandardBackends(serviceProvider, messaging, arguments.Extensions);
            commandLine.Arguments        = arguments;
            var command = commandLine.ParseStandardCommandLine();

            command?.Execute();
        }
Esempio n. 23
0
        private IExtensionManager CreateExtensionManagerWithStandardBackends(IWixToolsetServiceProvider serviceProvider, IMessaging messaging, string[] extensions)
        {
            var extensionManager = serviceProvider.GetService <IExtensionManager>();

            foreach (var type in new[] { typeof(WixToolset.Core.Burn.WixToolsetStandardBackend), typeof(WixToolset.Core.WindowsInstaller.WixToolsetStandardBackend) })
            {
                extensionManager.Add(type.Assembly);
            }

            foreach (var extension in extensions)
            {
                try
                {
                    extensionManager.Load(extension);
                }
                catch (WixException e)
                {
                    messaging.Write(e.Error);
                }
            }

            return(extensionManager);
        }
Esempio n. 24
0
 public BurnBackendHelper(IWixToolsetServiceProvider serviceProvider)
 {
     this.backendHelper = serviceProvider.GetService <IBackendHelper>();
 }
Esempio n. 25
0
 public DecompileCommand(IWixToolsetServiceProvider serviceProvider)
 {
     this.ServiceProvider = serviceProvider;
     this.Messaging       = serviceProvider.GetService <IMessaging>();
     this.commandLine     = new CommandLine(this.Messaging);
 }
Esempio n. 26
0
 public CommandLine(IWixToolsetServiceProvider serviceProvider) => this.ServiceProvider = serviceProvider;
Esempio n. 27
0
 public BackendHelper(IWixToolsetServiceProvider serviceProvider)
 {
     this.Messaging   = serviceProvider.GetService <IMessaging>();
     this.ParseHelper = serviceProvider.GetService <IParseHelper>();
 }
Esempio n. 28
0
        public ParseHelper(IWixToolsetServiceProvider serviceProvider)
        {
            this.ServiceProvider = serviceProvider;

            this.Messaging = serviceProvider.GetService <IMessaging>();
        }
 public ExtensionCacheManagerCommand(IWixToolsetServiceProvider serviceProvider)
 {
     this.Messaging           = serviceProvider.GetService <IMessaging>();
     this.ExtensionReferences = new List <string>();
 }
Esempio n. 30
0
 internal LayoutContext(IWixToolsetServiceProvider serviceProvider)
 {
     this.ServiceProvider = serviceProvider;
 }