diff options
| author | Rob Mensching <rob@firegiant.com> | 2017-10-18 15:21:45 -0700 |
|---|---|---|
| committer | Rob Mensching <rob@firegiant.com> | 2017-10-18 15:21:45 -0700 |
| commit | 7efd412cda00b369bc331c9bedd8db971d98fee7 (patch) | |
| tree | 20403b9a5372db2407200cefab1eed0bdcc19879 /src/WixToolset.Extensibility/Services | |
| parent | 475dd063933b8a23d8e47021e9b105a20699bbac (diff) | |
| download | wix-7efd412cda00b369bc331c9bedd8db971d98fee7.tar.gz wix-7efd412cda00b369bc331c9bedd8db971d98fee7.tar.bz2 wix-7efd412cda00b369bc331c9bedd8db971d98fee7.zip | |
Incorporate refactoring of WixToolset.Core assemblies
Diffstat (limited to 'src/WixToolset.Extensibility/Services')
6 files changed, 127 insertions, 0 deletions
diff --git a/src/WixToolset.Extensibility/Services/IBindContext.cs b/src/WixToolset.Extensibility/Services/IBindContext.cs new file mode 100644 index 00000000..ce78709b --- /dev/null +++ b/src/WixToolset.Extensibility/Services/IBindContext.cs | |||
| @@ -0,0 +1,59 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Collections.Generic; | ||
| 7 | using WixToolset.Data; | ||
| 8 | |||
| 9 | public interface IBindContext | ||
| 10 | { | ||
| 11 | IServiceProvider ServiceProvider { get; } | ||
| 12 | |||
| 13 | Messaging Messaging { get; set; } | ||
| 14 | |||
| 15 | IEnumerable<BindPath> BindPaths { get; set; } | ||
| 16 | |||
| 17 | int CabbingThreadCount { get; set; } | ||
| 18 | |||
| 19 | string CabCachePath { get; set; } | ||
| 20 | |||
| 21 | int Codepage { get; set; } | ||
| 22 | |||
| 23 | CompressionLevel DefaultCompressionLevel { get; set; } | ||
| 24 | |||
| 25 | IEnumerable<IDelayedField> DelayedFields { get; set; } | ||
| 26 | |||
| 27 | IEnumerable<IExpectedExtractFile> ExpectedEmbeddedFiles { get; set; } | ||
| 28 | |||
| 29 | IExtensionManager ExtensionManager { get; set; } | ||
| 30 | |||
| 31 | IEnumerable<IBinderExtension> Extensions { get; set; } | ||
| 32 | |||
| 33 | IEnumerable<string> Ices { get; set; } | ||
| 34 | |||
| 35 | string IntermediateFolder { get; set; } | ||
| 36 | |||
| 37 | Output IntermediateRepresentation { get; set; } | ||
| 38 | |||
| 39 | string OutputPath { get; set; } | ||
| 40 | |||
| 41 | string OutputPdbPath { get; set; } | ||
| 42 | |||
| 43 | bool SuppressAclReset { get; set; } | ||
| 44 | |||
| 45 | IEnumerable<string> SuppressIces { get; set; } | ||
| 46 | |||
| 47 | bool SuppressValidation { get; set; } | ||
| 48 | |||
| 49 | IBindVariableResolver WixVariableResolver { get; set; } | ||
| 50 | |||
| 51 | string ContentsFile { get; set; } | ||
| 52 | |||
| 53 | string OutputsFile { get; set; } | ||
| 54 | |||
| 55 | string BuiltOutputsFile { get; set; } | ||
| 56 | |||
| 57 | string WixprojectFile { get; set; } | ||
| 58 | } | ||
| 59 | } | ||
diff --git a/src/WixToolset.Extensibility/Services/ICommandLine.cs b/src/WixToolset.Extensibility/Services/ICommandLine.cs new file mode 100644 index 00000000..9dd247ff --- /dev/null +++ b/src/WixToolset.Extensibility/Services/ICommandLine.cs | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | public interface ICommandLine | ||
| 6 | { | ||
| 7 | ICommandLineCommand ParseStandardCommandLine(ICommandLineContext commandLineContext); | ||
| 8 | } | ||
| 9 | } | ||
diff --git a/src/WixToolset.Extensibility/Services/ICommandLineCommand.cs b/src/WixToolset.Extensibility/Services/ICommandLineCommand.cs new file mode 100644 index 00000000..f2333c55 --- /dev/null +++ b/src/WixToolset.Extensibility/Services/ICommandLineCommand.cs | |||
| @@ -0,0 +1,9 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | public interface ICommandLineCommand | ||
| 6 | { | ||
| 7 | int Execute(); | ||
| 8 | } | ||
| 9 | } | ||
diff --git a/src/WixToolset.Extensibility/Services/ICommandLineContext.cs b/src/WixToolset.Extensibility/Services/ICommandLineContext.cs new file mode 100644 index 00000000..0e040d7f --- /dev/null +++ b/src/WixToolset.Extensibility/Services/ICommandLineContext.cs | |||
| @@ -0,0 +1,20 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using WixToolset.Data; | ||
| 7 | |||
| 8 | public interface ICommandLineContext | ||
| 9 | { | ||
| 10 | IServiceProvider ServiceProvider { get; } | ||
| 11 | |||
| 12 | Messaging Messaging { get; set; } | ||
| 13 | |||
| 14 | IExtensionManager ExtensionManager { get; set; } | ||
| 15 | |||
| 16 | string Arguments { get; set; } | ||
| 17 | |||
| 18 | string[] ParsedArguments { get; set; } | ||
| 19 | } | ||
| 20 | } | ||
diff --git a/src/WixToolset.Extensibility/Services/IExtensionManager.cs b/src/WixToolset.Extensibility/Services/IExtensionManager.cs new file mode 100644 index 00000000..1d693ee4 --- /dev/null +++ b/src/WixToolset.Extensibility/Services/IExtensionManager.cs | |||
| @@ -0,0 +1,16 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | using System.Collections.Generic; | ||
| 6 | using System.Reflection; | ||
| 7 | |||
| 8 | public interface IExtensionManager | ||
| 9 | { | ||
| 10 | Assembly Add(Assembly assembly); | ||
| 11 | |||
| 12 | Assembly Load(string extension); | ||
| 13 | |||
| 14 | IEnumerable<T> Create<T>() where T : class; | ||
| 15 | } | ||
| 16 | } | ||
diff --git a/src/WixToolset.Extensibility/Services/ServiceProviderExtensions.cs b/src/WixToolset.Extensibility/Services/ServiceProviderExtensions.cs new file mode 100644 index 00000000..f4a5e8c3 --- /dev/null +++ b/src/WixToolset.Extensibility/Services/ServiceProviderExtensions.cs | |||
| @@ -0,0 +1,14 @@ | |||
| 1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
| 2 | |||
| 3 | namespace WixToolset.Extensibility.Services | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | |||
| 7 | public static class ServiceProviderExtensions | ||
| 8 | { | ||
| 9 | public static T GetService<T>(this IServiceProvider serviceProvider) where T : class | ||
| 10 | { | ||
| 11 | return (T)serviceProvider.GetService(typeof(T)); | ||
| 12 | } | ||
| 13 | } | ||
| 14 | } | ||
