diff options
Diffstat (limited to 'src')
74 files changed, 3531 insertions, 1047 deletions
diff --git a/src/Cpp.Build.props b/src/Cpp.Build.props new file mode 100644 index 00000000..c6ced58e --- /dev/null +++ b/src/Cpp.Build.props | |||
| @@ -0,0 +1,106 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project> | ||
| 5 | <PropertyGroup> | ||
| 6 | <Platform Condition=" '$(Platform)' == '' OR '$(Platform)' == 'AnyCPU' OR '$(Platform)' == 'x86' ">Win32</Platform> | ||
| 7 | <NormalizedPlatform Condition=" '$(Platform)'=='Win32' ">x86</NormalizedPlatform> | ||
| 8 | <NormalizedPlatform Condition=" '$(NormalizedPlatform)'=='' ">$(Platform)</NormalizedPlatform> | ||
| 9 | <IntDir>$(BaseIntermediateOutputPath)$(Configuration)\$(NormalizedPlatform)\</IntDir> | ||
| 10 | <OutDir>$(OutputPath)$(NormalizedPlatform)\</OutDir> | ||
| 11 | </PropertyGroup> | ||
| 12 | |||
| 13 | <PropertyGroup Condition="'$(WindowsTargetPlatformVersion)'=='' AND '$(VisualStudioVersion)'=='15.0'"> | ||
| 14 | <WindowsTargetPlatformVersion>$([Microsoft.Build.Utilities.ToolLocationHelper]::GetLatestSDKTargetPlatformVersion('Windows', '10.0'))</WindowsTargetPlatformVersion> | ||
| 15 | </PropertyGroup> | ||
| 16 | |||
| 17 | <ItemDefinitionGroup> | ||
| 18 | <ClCompile> | ||
| 19 | <DisableSpecificWarnings>$(DisableSpecificCompilerWarnings)</DisableSpecificWarnings> | ||
| 20 | <WarningLevel>Level4</WarningLevel> | ||
| 21 | <AdditionalIncludeDirectories>$(ProjectDir)inc;$(MSBuildProjectDirectory);$(IntDir);$(SqlCESdkIncludePath);$(ProjectAdditionalIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
| 22 | <PreprocessorDefinitions>WIN32;_WINDOWS;_WIN32_MSI=500;_WIN32_WINNT=0x0501;$(ArmPreprocessorDefinitions);$(UnicodePreprocessorDefinitions);_CRT_STDIO_LEGACY_WIDE_SPECIFIERS;_WINSOCK_DEPRECATED_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
| 23 | <PrecompiledHeader>Use</PrecompiledHeader> | ||
| 24 | <PrecompiledHeaderFile>precomp.h</PrecompiledHeaderFile> | ||
| 25 | <CallingConvention Condition="'$(Platform)'=='Win32'">StdCall</CallingConvention> | ||
| 26 | <TreatWarningAsError>true</TreatWarningAsError> | ||
| 27 | <ExceptionHandling>false</ExceptionHandling> | ||
| 28 | <AdditionalOptions>-YlprecompDefine</AdditionalOptions> | ||
| 29 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/Zc:threadSafeInit- %(AdditionalOptions)</AdditionalOptions> | ||
| 30 | <MultiProcessorCompilation Condition=" $(NUMBER_OF_PROCESSORS) > 4 ">true</MultiProcessorCompilation> | ||
| 31 | </ClCompile> | ||
| 32 | <ResourceCompile> | ||
| 33 | <PreprocessorDefinitions>$(ArmPreprocessorDefinitions);%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
| 34 | <AdditionalIncludeDirectories>$(ProjectAdditionalResourceIncludeDirectories);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | ||
| 35 | </ResourceCompile> | ||
| 36 | <Lib> | ||
| 37 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ProjectAdditionalLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
| 38 | </Lib> | ||
| 39 | <Link> | ||
| 40 | <SubSystem>$(ProjectSubSystem)</SubSystem> | ||
| 41 | <ModuleDefinitionFile>$(ProjectModuleDefinitionFile)</ModuleDefinitionFile> | ||
| 42 | <NoEntryPoint>$(ResourceOnlyDll)</NoEntryPoint> | ||
| 43 | <GenerateDebugInformation>true</GenerateDebugInformation> | ||
| 44 | <AdditionalDependencies>$(ProjectAdditionalLinkLibraries);advapi32.lib;comdlg32.lib;user32.lib;oleaut32.lib;gdi32.lib;shell32.lib;ole32.lib;version.lib;%(AdditionalDependencies)</AdditionalDependencies> | ||
| 45 | <AdditionalLibraryDirectories>$(OutDir);$(AdditionalMultiTargetLibraryPath);$(ArmLibraryDirectories);$(ProjectAdditionalLinkLibraryDirectories);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> | ||
| 46 | <AdditionalOptions Condition=" $(PlatformToolset.StartsWith('v14')) ">/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions> | ||
| 47 | </Link> | ||
| 48 | </ItemDefinitionGroup> | ||
| 49 | |||
| 50 | <ItemDefinitionGroup Condition=" '$(Platform)'=='Win32' and '$(PlatformToolset)'!='v100'"> | ||
| 51 | <ClCompile> | ||
| 52 | <EnableEnhancedInstructionSet>NoExtensions</EnableEnhancedInstructionSet> | ||
| 53 | </ClCompile> | ||
| 54 | </ItemDefinitionGroup> | ||
| 55 | <ItemDefinitionGroup Condition=" '$(Platform)'=='arm' "> | ||
| 56 | <ClCompile> | ||
| 57 | <CallingConvention>CDecl</CallingConvention> | ||
| 58 | </ClCompile> | ||
| 59 | </ItemDefinitionGroup> | ||
| 60 | <ItemDefinitionGroup Condition=" '$(ConfigurationType)'=='StaticLibrary' "> | ||
| 61 | <ClCompile> | ||
| 62 | <DebugInformationFormat>OldStyle</DebugInformationFormat> | ||
| 63 | <OmitDefaultLibName>true</OmitDefaultLibName> | ||
| 64 | <IgnoreAllDefaultLibraries>true</IgnoreAllDefaultLibraries> | ||
| 65 | </ClCompile> | ||
| 66 | </ItemDefinitionGroup> | ||
| 67 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' "> | ||
| 68 | <ClCompile> | ||
| 69 | <Optimization>Disabled</Optimization> | ||
| 70 | <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks> | ||
| 71 | <PreprocessorDefinitions>_DEBUG;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
| 72 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> | ||
| 73 | </ClCompile> | ||
| 74 | </ItemDefinitionGroup> | ||
| 75 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Debug' and '$(CLRSupport)'=='true' "> | ||
| 76 | <ClCompile> | ||
| 77 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
| 78 | <RuntimeLibrary>MultiThreadedDebugDll</RuntimeLibrary> | ||
| 79 | </ClCompile> | ||
| 80 | </ItemDefinitionGroup> | ||
| 81 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' "> | ||
| 82 | <ClCompile> | ||
| 83 | <Optimization>MinSpace</Optimization> | ||
| 84 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> | ||
| 85 | <FunctionLevelLinking>true</FunctionLevelLinking> | ||
| 86 | <IntrinsicFunctions>true</IntrinsicFunctions> | ||
| 87 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> | ||
| 88 | </ClCompile> | ||
| 89 | <Link> | ||
| 90 | <EnableCOMDATFolding>true</EnableCOMDATFolding> | ||
| 91 | <OptimizeReferences>true</OptimizeReferences> | ||
| 92 | </Link> | ||
| 93 | </ItemDefinitionGroup> | ||
| 94 | <ItemDefinitionGroup Condition=" '$(Configuration)'=='Release' and '$(CLRSupport)'=='true' "> | ||
| 95 | <ClCompile> | ||
| 96 | <BasicRuntimeChecks></BasicRuntimeChecks> | ||
| 97 | <RuntimeLibrary>MultiThreadedDll</RuntimeLibrary> | ||
| 98 | </ClCompile> | ||
| 99 | </ItemDefinitionGroup> | ||
| 100 | <ItemDefinitionGroup Condition=" '$(CLRSupport)'=='true' "> | ||
| 101 | <Link> | ||
| 102 | <KeyFile>$(LinkKeyFile)</KeyFile> | ||
| 103 | <DelaySign>$(LinkDelaySign)</DelaySign> | ||
| 104 | </Link> | ||
| 105 | </ItemDefinitionGroup> | ||
| 106 | </Project> | ||
diff --git a/src/Directory.Build.props b/src/Directory.Build.props new file mode 100644 index 00000000..a22f4470 --- /dev/null +++ b/src/Directory.Build.props | |||
| @@ -0,0 +1,28 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | <!-- | ||
| 4 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.props | ||
| 5 | then update all of the repos. | ||
| 6 | --> | ||
| 7 | <Project> | ||
| 8 | <PropertyGroup> | ||
| 9 | <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> | ||
| 10 | <EnableSourceLink Condition=" '$(NCrunch)' == '1' ">false</EnableSourceLink> | ||
| 11 | <MSBuildWarningsAsMessages>MSB3246</MSBuildWarningsAsMessages> | ||
| 12 | |||
| 13 | <ProjectName Condition=" '$(ProjectName)' == '' ">$(MSBuildProjectName)</ProjectName> | ||
| 14 | <BaseOutputPath>$([System.IO.Path]::GetFullPath($(MSBuildThisFileDirectory)..\build\))</BaseOutputPath> | ||
| 15 | <BaseIntermediateOutputPath>$(BaseOutputPath)obj\$(ProjectName)\</BaseIntermediateOutputPath> | ||
| 16 | <OutputPath>$(BaseOutputPath)$(Configuration)\</OutputPath> | ||
| 17 | |||
| 18 | <Authors>WiX Toolset Team</Authors> | ||
| 19 | <Company>WiX Toolset</Company> | ||
| 20 | <Copyright>Copyright (c) .NET Foundation and contributors. All rights reserved.</Copyright> | ||
| 21 | <PackageLicenseExpression>MS-RL</PackageLicenseExpression> | ||
| 22 | <Product>WiX Toolset</Product> | ||
| 23 | </PropertyGroup> | ||
| 24 | |||
| 25 | <Import Project="Cpp.Build.props" Condition=" Exists('Cpp.Build.props') And '$(MSBuildProjectExtension)'=='.vcxproj' " /> | ||
| 26 | <Import Project="Wix.Build.props" Condition=" Exists('Wix.Build.props') And '$(MSBuildProjectExtension)'=='.wixproj' " /> | ||
| 27 | <Import Project="Custom.Build.props" Condition=" Exists('Custom.Build.props') " /> | ||
| 28 | </Project> | ||
diff --git a/src/Directory.Build.targets b/src/Directory.Build.targets new file mode 100644 index 00000000..dac7452a --- /dev/null +++ b/src/Directory.Build.targets | |||
| @@ -0,0 +1,48 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | <!-- | ||
| 4 | Do NOT modify this file. Update the canonical version in Home\repo-template\src\Directory.Build.targets | ||
| 5 | then update all of the repos. | ||
| 6 | --> | ||
| 7 | <!-- | ||
| 8 | Replace PackageReferences with ProjectReferences when the projects can be found in .sln. | ||
| 9 | See the original here: https://github.com/dotnet/sdk/issues/1151#issuecomment-385133284 | ||
| 10 | --> | ||
| 11 | <Project> | ||
| 12 | <PropertyGroup> | ||
| 13 | <ReplacePackageReferences>true</ReplacePackageReferences> | ||
| 14 | <TheSolutionPath Condition=" '$(NCrunch)'=='' ">$(SolutionPath)</TheSolutionPath> | ||
| 15 | <TheSolutionPath Condition=" '$(NCrunch)'=='1' ">$(NCrunchOriginalSolutionPath)</TheSolutionPath> | ||
| 16 | </PropertyGroup> | ||
| 17 | |||
| 18 | <Choose> | ||
| 19 | <When Condition="$(ReplacePackageReferences) AND '$(TheSolutionPath)' != '' AND '$(TheSolutionPath)' != '*undefined*' AND Exists('$(TheSolutionPath)')"> | ||
| 20 | |||
| 21 | <PropertyGroup> | ||
| 22 | <SolutionFileContent>$([System.IO.File]::ReadAllText($(TheSolutionPath)))</SolutionFileContent> | ||
| 23 | <SmartSolutionDir>$([System.IO.Path]::GetDirectoryName( $(TheSolutionPath) ))</SmartSolutionDir> | ||
| 24 | <RegexPattern>(?<="[PackageName]", ")(.*)(?=", ")</RegexPattern> | ||
| 25 | </PropertyGroup> | ||
| 26 | |||
| 27 | <ItemGroup> | ||
| 28 | <!-- Keep the identity of the PackageReference --> | ||
| 29 | <SmartPackageReference Include="@(PackageReference)"> | ||
| 30 | <PackageName>%(Identity)</PackageName> | ||
| 31 | <InSolution>$(SolutionFileContent.Contains('\%(Identity).csproj'))</InSolution> | ||
| 32 | </SmartPackageReference> | ||
| 33 | |||
| 34 | <!-- Filter them by mapping them to another ItemGroup using the WithMetadataValue item function --> | ||
| 35 | <PackageInSolution Include="@(SmartPackageReference->WithMetadataValue('InSolution', True))"> | ||
| 36 | <Pattern>$(RegexPattern.Replace('[PackageName]','%(PackageName)') )</Pattern> | ||
| 37 | <SmartPath>$([System.Text.RegularExpressions.Regex]::Match('$(SolutionFileContent)', '%(Pattern)'))</SmartPath> | ||
| 38 | </PackageInSolution> | ||
| 39 | |||
| 40 | <ProjectReference Include="@(PackageInSolution->'$(SmartSolutionDir)\%(SmartPath)' )"/> | ||
| 41 | |||
| 42 | <!-- Remove the package references that are now referenced as projects --> | ||
| 43 | <PackageReference Remove="@(PackageInSolution->'%(PackageName)' )"/> | ||
| 44 | </ItemGroup> | ||
| 45 | |||
| 46 | </When> | ||
| 47 | </Choose> | ||
| 48 | </Project> | ||
diff --git a/src/FindLocalWix.props b/src/FindLocalWix.props new file mode 100644 index 00000000..a784e352 --- /dev/null +++ b/src/FindLocalWix.props | |||
| @@ -0,0 +1,8 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
| 5 | <PropertyGroup> | ||
| 6 | <WixTargetsPath Condition=" '$(Configuration)' == 'Debug' And Exists('$(MSBuildThisFileDirectory)..\..\Tools\README.md') ">$(MSBuildThisFileDirectory)..\..\Tools\build\Debug\net461\wix.targets</WixTargetsPath> | ||
| 7 | </PropertyGroup> | ||
| 8 | </Project> | ||
diff --git a/src/Wix.Build.props b/src/Wix.Build.props new file mode 100644 index 00000000..a81c9615 --- /dev/null +++ b/src/Wix.Build.props | |||
| @@ -0,0 +1,31 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8" ?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project> | ||
| 5 | <PropertyGroup> | ||
| 6 | <DefineConstants>$(DefineConstants);CompanyName=$(Company)</DefineConstants> | ||
| 7 | <OutputPath_x86>$(OutputPath)x86\</OutputPath_x86> | ||
| 8 | <OutputPath_x64>$(OutputPath)x64\</OutputPath_x64> | ||
| 9 | <OutputPath_arm>$(OutputPath)ARM\</OutputPath_arm> | ||
| 10 | <OutputPath_arm64>$(OutputPath)ARM64\</OutputPath_arm64> | ||
| 11 | <OutputPath_win32>$(OutputPath)Win32\</OutputPath_win32> | ||
| 12 | </PropertyGroup> | ||
| 13 | |||
| 14 | <ItemGroup> | ||
| 15 | <BindInputPaths Include="$(OutputPath_x86)"> | ||
| 16 | <BindName>x86</BindName> | ||
| 17 | </BindInputPaths> | ||
| 18 | <BindInputPaths Include="$(OutputPath_x64)"> | ||
| 19 | <BindName>x64</BindName> | ||
| 20 | </BindInputPaths> | ||
| 21 | <BindInputPaths Include="$(OutputPath_arm)"> | ||
| 22 | <BindName>arm</BindName> | ||
| 23 | </BindInputPaths> | ||
| 24 | <BindInputPaths Include="$(OutputPath_arm64)"> | ||
| 25 | <BindName>arm64</BindName> | ||
| 26 | </BindInputPaths> | ||
| 27 | <BindInputPaths Include="$(OutputPath_win32)"> | ||
| 28 | <BindName>win32</BindName> | ||
| 29 | </BindInputPaths> | ||
| 30 | </ItemGroup> | ||
| 31 | </Project> | ||
diff --git a/src/ca/cpexec.def b/src/ca/complusca.def index 1dad15c2..7c475759 100644 --- a/src/ca/cpexec.def +++ b/src/ca/complusca.def | |||
| @@ -1,6 +1,8 @@ | |||
| 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. | 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 | 2 | ||
| 3 | 3 | ||
| 4 | LIBRARY "complusca" | ||
| 5 | |||
| 4 | EXPORTS | 6 | EXPORTS |
| 5 | ComPlusPrepare | 7 | ComPlusPrepare |
| 6 | ComPlusCleanup | 8 | ComPlusCleanup |
| @@ -9,3 +11,5 @@ EXPORTS | |||
| 9 | ComPlusRollbackInstallExecute | 11 | ComPlusRollbackInstallExecute |
| 10 | ComPlusUninstallExecute | 12 | ComPlusUninstallExecute |
| 11 | ComPlusRollbackUninstallExecute | 13 | ComPlusRollbackUninstallExecute |
| 14 | ConfigureComPlusInstall | ||
| 15 | ConfigureComPlusUninstall | ||
diff --git a/src/ca/complusca.vcxproj b/src/ca/complusca.vcxproj new file mode 100644 index 00000000..5085f61d --- /dev/null +++ b/src/ca/complusca.vcxproj | |||
| @@ -0,0 +1,99 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project DefaultTargets="Build" ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | ||
| 5 | <Import Project="..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props" Condition="Exists('..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props')" /> | ||
| 6 | <Import Project="..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props" Condition="Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" /> | ||
| 7 | |||
| 8 | <ItemGroup Label="ProjectConfigurations"> | ||
| 9 | <ProjectConfiguration Include="Debug|Win32"> | ||
| 10 | <Configuration>Debug</Configuration> | ||
| 11 | <Platform>Win32</Platform> | ||
| 12 | </ProjectConfiguration> | ||
| 13 | <ProjectConfiguration Include="Release|Win32"> | ||
| 14 | <Configuration>Release</Configuration> | ||
| 15 | <Platform>Win32</Platform> | ||
| 16 | </ProjectConfiguration> | ||
| 17 | <ProjectConfiguration Include="Debug|x64"> | ||
| 18 | <Configuration>Debug</Configuration> | ||
| 19 | <Platform>x64</Platform> | ||
| 20 | </ProjectConfiguration> | ||
| 21 | <ProjectConfiguration Include="Release|x64"> | ||
| 22 | <Configuration>Release</Configuration> | ||
| 23 | <Platform>x64</Platform> | ||
| 24 | </ProjectConfiguration> | ||
| 25 | </ItemGroup> | ||
| 26 | |||
| 27 | <PropertyGroup Label="Globals"> | ||
| 28 | <ProjectGuid>{BDEF51ED-E242-4FA2-801A-01B127DF851A}</ProjectGuid> | ||
| 29 | <ConfigurationType>DynamicLibrary</ConfigurationType> | ||
| 30 | <PlatformToolset>v141</PlatformToolset> | ||
| 31 | <CharacterSet>Unicode</CharacterSet> | ||
| 32 | <TargetName>complusca</TargetName> | ||
| 33 | <ProjectModuleDefinitionFile>complusca.def</ProjectModuleDefinitionFile> | ||
| 34 | <Description>WiX Toolset ComPlus CustomAction</Description> | ||
| 35 | </PropertyGroup> | ||
| 36 | |||
| 37 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> | ||
| 38 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" /> | ||
| 39 | |||
| 40 | <PropertyGroup> | ||
| 41 | <ProjectAdditionalLinkLibraries>msi.lib</ProjectAdditionalLinkLibraries> | ||
| 42 | </PropertyGroup> | ||
| 43 | |||
| 44 | <ItemGroup> | ||
| 45 | <ClCompile Include="cpappexec.cpp" /> | ||
| 46 | <ClCompile Include="cpapproleexec.cpp" /> | ||
| 47 | <ClCompile Include="cpapprolesched.cpp" /> | ||
| 48 | <ClCompile Include="cpappsched.cpp" /> | ||
| 49 | <ClCompile Include="cpasmexec.cpp" /> | ||
| 50 | <ClCompile Include="cpasmsched.cpp" /> | ||
| 51 | <ClCompile Include="cpexec.cpp" /> | ||
| 52 | <ClCompile Include="cppartexec.cpp" /> | ||
| 53 | <ClCompile Include="cppartroleexec.cpp" /> | ||
| 54 | <ClCompile Include="cppartrolesched.cpp" /> | ||
| 55 | <ClCompile Include="cppartsched.cpp" /> | ||
| 56 | <ClCompile Include="cpsched.cpp" /> | ||
| 57 | <ClCompile Include="cpsubsexec.cpp" /> | ||
| 58 | <ClCompile Include="cpsubssched.cpp" /> | ||
| 59 | <ClCompile Include="cputilexec.cpp" /> | ||
| 60 | <ClCompile Include="cputilsched.cpp" /> | ||
| 61 | <ClCompile Include="dllmain.cpp"> | ||
| 62 | <PrecompiledHeader>Create</PrecompiledHeader> | ||
| 63 | </ClCompile> | ||
| 64 | </ItemGroup> | ||
| 65 | |||
| 66 | <ItemGroup> | ||
| 67 | <ClInclude Include="cpappexec.h" /> | ||
| 68 | <ClInclude Include="cpapproleexec.h" /> | ||
| 69 | <ClInclude Include="cpapprolesched.h" /> | ||
| 70 | <ClInclude Include="cpappsched.h" /> | ||
| 71 | <ClInclude Include="cpasmexec.h" /> | ||
| 72 | <ClInclude Include="cpasmsched.h" /> | ||
| 73 | <ClInclude Include="cpcost.h" /> | ||
| 74 | <ClInclude Include="cppartexec.h" /> | ||
| 75 | <ClInclude Include="cppartroleexec.h" /> | ||
| 76 | <ClInclude Include="cppartrolesched.h" /> | ||
| 77 | <ClInclude Include="cppartsched.h" /> | ||
| 78 | <ClInclude Include="cpsubsexec.h" /> | ||
| 79 | <ClInclude Include="cpsubssched.h" /> | ||
| 80 | <ClInclude Include="cputilexec.h" /> | ||
| 81 | <ClInclude Include="cputilsched.h" /> | ||
| 82 | <ClInclude Include="precomp.h" /> | ||
| 83 | </ItemGroup> | ||
| 84 | |||
| 85 | <ItemGroup> | ||
| 86 | <None Include="packages.config" /> | ||
| 87 | <None Include="complusca.def" /> | ||
| 88 | </ItemGroup> | ||
| 89 | |||
| 90 | <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> | ||
| 91 | |||
| 92 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
| 93 | <PropertyGroup> | ||
| 94 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | ||
| 95 | </PropertyGroup> | ||
| 96 | <Error Condition="!Exists('..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.DUtil.4.0.16\build\WixToolset.DUtil.props'))" /> | ||
| 97 | <Error Condition="!Exists('..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.WcaUtil.4.0.2\build\WixToolset.WcaUtil.props'))" /> | ||
| 98 | </Target> | ||
| 99 | </Project> | ||
diff --git a/src/ca/cpappexec.cpp b/src/ca/cpappexec.cpp index 43d6cd6d..48948210 100644 --- a/src/ca/cpappexec.cpp +++ b/src/ca/cpappexec.cpp | |||
| @@ -239,7 +239,7 @@ static HRESULT CreateApplication( | |||
| 239 | WcaLog(LOGMSG_VERBOSE, "Creating application, key: %S", pAttrs->pwzKey); | 239 | WcaLog(LOGMSG_VERBOSE, "Creating application, key: %S", pAttrs->pwzKey); |
| 240 | 240 | ||
| 241 | // get applications collection | 241 | // get applications collection |
| 242 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); | 242 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); |
| 243 | if (S_FALSE == hr) | 243 | if (S_FALSE == hr) |
| 244 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); | 244 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); |
| 245 | ExitOnFailure(hr, "Failed to get applications collection"); | 245 | ExitOnFailure(hr, "Failed to get applications collection"); |
| @@ -304,7 +304,7 @@ static HRESULT RemoveApplication( | |||
| 304 | WcaLog(LOGMSG_VERBOSE, "Removing application, key: %S", pAttrs->pwzKey); | 304 | WcaLog(LOGMSG_VERBOSE, "Removing application, key: %S", pAttrs->pwzKey); |
| 305 | 305 | ||
| 306 | // get applications collection | 306 | // get applications collection |
| 307 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); | 307 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piAppColl); |
| 308 | ExitOnFailure(hr, "Failed to get applications collection"); | 308 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 309 | 309 | ||
| 310 | if (S_FALSE == hr) | 310 | if (S_FALSE == hr) |
diff --git a/src/ca/cpappsched.cpp b/src/ca/cpappsched.cpp index cec99794..1fb2203b 100644 --- a/src/ca/cpappsched.cpp +++ b/src/ca/cpappsched.cpp | |||
| @@ -579,7 +579,7 @@ HRESULT CpiGetRolesCollForApplication( | |||
| 579 | if (pApp->pPartition) | 579 | if (pApp->pPartition) |
| 580 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); | 580 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); |
| 581 | else | 581 | else |
| 582 | hr = CpiGetApplicationsCollection(&piAppColl); | 582 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
| 583 | ExitOnFailure(hr, "Failed to get applications collection"); | 583 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 584 | 584 | ||
| 585 | if (S_FALSE == hr) | 585 | if (S_FALSE == hr) |
| @@ -593,7 +593,7 @@ HRESULT CpiGetRolesCollForApplication( | |||
| 593 | ExitFunction(); // exit with hr = S_FALSE | 593 | ExitFunction(); // exit with hr = S_FALSE |
| 594 | 594 | ||
| 595 | // get roles collection | 595 | // get roles collection |
| 596 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Roles", &pApp->piRolesColl); | 596 | hr = CpiSchedGetCatalogCollection(piAppColl, piAppObj, L"Roles", &pApp->piRolesColl); |
| 597 | ExitOnFailure(hr, "Failed to get roles collection"); | 597 | ExitOnFailure(hr, "Failed to get roles collection"); |
| 598 | } | 598 | } |
| 599 | 599 | ||
| @@ -632,7 +632,7 @@ HRESULT CpiGetComponentsCollForApplication( | |||
| 632 | if (pApp->pPartition) | 632 | if (pApp->pPartition) |
| 633 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); | 633 | hr = CpiGetApplicationsCollForPartition(pApp->pPartition, &piAppColl); |
| 634 | else | 634 | else |
| 635 | hr = CpiGetApplicationsCollection(&piAppColl); | 635 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
| 636 | ExitOnFailure(hr, "Failed to get applications collection"); | 636 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 637 | 637 | ||
| 638 | if (S_FALSE == hr) | 638 | if (S_FALSE == hr) |
| @@ -646,7 +646,7 @@ HRESULT CpiGetComponentsCollForApplication( | |||
| 646 | ExitFunction(); // exit with hr = S_FALSE | 646 | ExitFunction(); // exit with hr = S_FALSE |
| 647 | 647 | ||
| 648 | // get roles collection | 648 | // get roles collection |
| 649 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Components", &pApp->piCompsColl); | 649 | hr = CpiSchedGetCatalogCollection(piAppColl, piAppObj, L"Components", &pApp->piCompsColl); |
| 650 | ExitOnFailure(hr, "Failed to get components collection"); | 650 | ExitOnFailure(hr, "Failed to get components collection"); |
| 651 | } | 651 | } |
| 652 | 652 | ||
| @@ -695,7 +695,7 @@ static HRESULT FindObjectForApplication( | |||
| 695 | if (pItm->pPartition) | 695 | if (pItm->pPartition) |
| 696 | hr = CpiGetApplicationsCollForPartition(pItm->pPartition, &piAppColl); | 696 | hr = CpiGetApplicationsCollForPartition(pItm->pPartition, &piAppColl); |
| 697 | else | 697 | else |
| 698 | hr = CpiGetApplicationsCollection(&piAppColl); | 698 | hr = CpiSchedGetApplicationsCollection(&piAppColl); |
| 699 | ExitOnFailure(hr, "Failed to get applications collection"); | 699 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 700 | 700 | ||
| 701 | if (S_FALSE == hr) | 701 | if (S_FALSE == hr) |
diff --git a/src/ca/cpasmexec.cpp b/src/ca/cpasmexec.cpp index 339c08e1..3d140027 100644 --- a/src/ca/cpasmexec.cpp +++ b/src/ca/cpasmexec.cpp | |||
| @@ -75,58 +75,47 @@ enum eInstallationFlags { | |||
| 75 | }; | 75 | }; |
| 76 | 76 | ||
| 77 | 77 | ||
| 78 | // private constants | ||
| 79 | |||
| 80 | enum eAssemblyAttributes | ||
| 81 | { | ||
| 82 | aaEventClass = (1 << 0), | ||
| 83 | aaDotNetAssembly = (1 << 1), | ||
| 84 | aaPathFromGAC = (1 << 2), | ||
| 85 | aaRunInCommit = (1 << 3) | ||
| 86 | }; | ||
| 87 | |||
| 88 | |||
| 89 | // private structs | 78 | // private structs |
| 90 | 79 | ||
| 91 | struct CPI_ROLE_ASSIGNMENT | 80 | struct CPIEXEC_ROLE_ASSIGNMENT |
| 92 | { | 81 | { |
| 93 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 82 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
| 94 | WCHAR wzRoleName[MAX_DARWIN_COLUMN + 1]; | 83 | WCHAR wzRoleName[MAX_DARWIN_COLUMN + 1]; |
| 95 | 84 | ||
| 96 | CPI_ROLE_ASSIGNMENT* pNext; | 85 | CPIEXEC_ROLE_ASSIGNMENT* pNext; |
| 97 | }; | 86 | }; |
| 98 | 87 | ||
| 99 | struct CPI_METHOD | 88 | struct CPIEXEC_METHOD |
| 100 | { | 89 | { |
| 101 | WCHAR wzIndex[11 + 1]; | 90 | WCHAR wzIndex[11 + 1]; |
| 102 | WCHAR wzName[MAX_DARWIN_COLUMN + 1]; | 91 | WCHAR wzName[MAX_DARWIN_COLUMN + 1]; |
| 103 | 92 | ||
| 104 | CPI_PROPERTY* pPropertyList; | 93 | CPI_PROPERTY* pPropertyList; |
| 105 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 94 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
| 106 | 95 | ||
| 107 | CPI_METHOD* pNext; | 96 | CPIEXEC_METHOD* pNext; |
| 108 | }; | 97 | }; |
| 109 | 98 | ||
| 110 | struct CPI_INTERFACE | 99 | struct CPIEXEC_INTERFACE |
| 111 | { | 100 | { |
| 112 | WCHAR wzIID[CPI_MAX_GUID + 1]; | 101 | WCHAR wzIID[CPI_MAX_GUID + 1]; |
| 113 | 102 | ||
| 114 | CPI_PROPERTY* pPropertyList; | 103 | CPI_PROPERTY* pPropertyList; |
| 115 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 104 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
| 116 | CPI_METHOD* pMethodList; | 105 | CPIEXEC_METHOD* pMethodList; |
| 117 | 106 | ||
| 118 | CPI_INTERFACE* pNext; | 107 | CPIEXEC_INTERFACE* pNext; |
| 119 | }; | 108 | }; |
| 120 | 109 | ||
| 121 | struct CPI_COMPONENT | 110 | struct CPIEXEC_COMPONENT |
| 122 | { | 111 | { |
| 123 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; | 112 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; |
| 124 | 113 | ||
| 125 | CPI_PROPERTY* pPropertyList; | 114 | CPI_PROPERTY* pPropertyList; |
| 126 | CPI_ROLE_ASSIGNMENT* pRoleAssignmentList; | 115 | CPIEXEC_ROLE_ASSIGNMENT* pRoleAssignmentList; |
| 127 | CPI_INTERFACE* pInterfaceList; | 116 | CPIEXEC_INTERFACE* pInterfaceList; |
| 128 | 117 | ||
| 129 | CPI_COMPONENT* pNext; | 118 | CPIEXEC_COMPONENT* pNext; |
| 130 | }; | 119 | }; |
| 131 | 120 | ||
| 132 | struct CPI_ASSEMBLY_ATTRIBUTES | 121 | struct CPI_ASSEMBLY_ATTRIBUTES |
| @@ -141,7 +130,7 @@ struct CPI_ASSEMBLY_ATTRIBUTES | |||
| 141 | LPWSTR pwzAppID; | 130 | LPWSTR pwzAppID; |
| 142 | LPWSTR pwzPartID; | 131 | LPWSTR pwzPartID; |
| 143 | int iAttributes; | 132 | int iAttributes; |
| 144 | CPI_COMPONENT* pCompList; | 133 | CPIEXEC_COMPONENT* pCompList; |
| 145 | }; | 134 | }; |
| 146 | 135 | ||
| 147 | struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES | 136 | struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES |
| @@ -152,7 +141,7 @@ struct CPI_ROLE_ASSIGNMENTS_ATTRIBUTES | |||
| 152 | LPWSTR pwzAppID; | 141 | LPWSTR pwzAppID; |
| 153 | LPWSTR pwzPartID; | 142 | LPWSTR pwzPartID; |
| 154 | int iRoleCount; | 143 | int iRoleCount; |
| 155 | CPI_COMPONENT* pCompList; | 144 | CPIEXEC_COMPONENT* pCompList; |
| 156 | }; | 145 | }; |
| 157 | 146 | ||
| 158 | 147 | ||
| @@ -187,7 +176,7 @@ static HRESULT UnregisterDotNetAssembly( | |||
| 187 | ); | 176 | ); |
| 188 | static HRESULT RemoveComponents( | 177 | static HRESULT RemoveComponents( |
| 189 | ICatalogCollection* piCompColl, | 178 | ICatalogCollection* piCompColl, |
| 190 | CPI_COMPONENT* pCompList | 179 | CPIEXEC_COMPONENT* pCompList |
| 191 | ); | 180 | ); |
| 192 | static HRESULT ReadAssemblyAttributes( | 181 | static HRESULT ReadAssemblyAttributes( |
| 193 | LPWSTR* ppwzData, | 182 | LPWSTR* ppwzData, |
| @@ -206,56 +195,56 @@ static void FreeRoleAssignmentsAttributes( | |||
| 206 | static HRESULT ConfigureComponents( | 195 | static HRESULT ConfigureComponents( |
| 207 | LPCWSTR pwzPartID, | 196 | LPCWSTR pwzPartID, |
| 208 | LPCWSTR pwzAppID, | 197 | LPCWSTR pwzAppID, |
| 209 | CPI_COMPONENT* pCompList, | 198 | CPIEXEC_COMPONENT* pCompList, |
| 210 | BOOL fCreate, | 199 | BOOL fCreate, |
| 211 | BOOL fProgress | 200 | BOOL fProgress |
| 212 | ); | 201 | ); |
| 213 | static HRESULT ConfigureInterfaces( | 202 | static HRESULT ConfigureInterfaces( |
| 214 | ICatalogCollection* piCompColl, | 203 | ICatalogCollection* piCompColl, |
| 215 | ICatalogObject* piCompObj, | 204 | ICatalogObject* piCompObj, |
| 216 | CPI_INTERFACE* pIntfList, | 205 | CPIEXEC_INTERFACE* pIntfList, |
| 217 | BOOL fCreate | 206 | BOOL fCreate |
| 218 | ); | 207 | ); |
| 219 | static HRESULT ConfigureMethods( | 208 | static HRESULT ConfigureMethods( |
| 220 | ICatalogCollection* piIntfColl, | 209 | ICatalogCollection* piIntfColl, |
| 221 | ICatalogObject* piIntfObj, | 210 | ICatalogObject* piIntfObj, |
| 222 | CPI_METHOD* pMethList, | 211 | CPIEXEC_METHOD* pMethList, |
| 223 | BOOL fCreate | 212 | BOOL fCreate |
| 224 | ); | 213 | ); |
| 225 | static HRESULT ConfigureRoleAssignments( | 214 | static HRESULT ConfigureRoleAssignments( |
| 226 | LPCWSTR pwzCollName, | 215 | LPCWSTR pwzCollName, |
| 227 | ICatalogCollection* piCompColl, | 216 | ICatalogCollection* piCompColl, |
| 228 | ICatalogObject* piCompObj, | 217 | ICatalogObject* piCompObj, |
| 229 | CPI_ROLE_ASSIGNMENT* pRoleList, | 218 | CPIEXEC_ROLE_ASSIGNMENT* pRoleList, |
| 230 | BOOL fCreate | 219 | BOOL fCreate |
| 231 | ); | 220 | ); |
| 232 | static HRESULT ReadComponentList( | 221 | static HRESULT ReadComponentList( |
| 233 | LPWSTR* ppwzData, | 222 | LPWSTR* ppwzData, |
| 234 | CPI_COMPONENT** ppCompList | 223 | CPIEXEC_COMPONENT** ppCompList |
| 235 | ); | 224 | ); |
| 236 | static HRESULT ReadInterfaceList( | 225 | static HRESULT ReadInterfaceList( |
| 237 | LPWSTR* ppwzData, | 226 | LPWSTR* ppwzData, |
| 238 | CPI_INTERFACE** ppIntfList | 227 | CPIEXEC_INTERFACE** ppIntfList |
| 239 | ); | 228 | ); |
| 240 | static HRESULT ReadMethodList( | 229 | static HRESULT ReadMethodList( |
| 241 | LPWSTR* ppwzData, | 230 | LPWSTR* ppwzData, |
| 242 | CPI_METHOD** ppMethList | 231 | CPIEXEC_METHOD** ppMethList |
| 243 | ); | 232 | ); |
| 244 | static HRESULT ReadRoleAssignmentList( | 233 | static HRESULT ReadRoleAssignmentList( |
| 245 | LPWSTR* ppwzData, | 234 | LPWSTR* ppwzData, |
| 246 | CPI_ROLE_ASSIGNMENT** ppRoleList | 235 | CPIEXEC_ROLE_ASSIGNMENT** ppRoleList |
| 247 | ); | 236 | ); |
| 248 | static void FreeComponentList( | 237 | static void FreeComponentList( |
| 249 | CPI_COMPONENT* pList | 238 | CPIEXEC_COMPONENT* pList |
| 250 | ); | 239 | ); |
| 251 | static void FreeInterfaceList( | 240 | static void FreeInterfaceList( |
| 252 | CPI_INTERFACE* pList | 241 | CPIEXEC_INTERFACE* pList |
| 253 | ); | 242 | ); |
| 254 | static void FreeMethodList( | 243 | static void FreeMethodList( |
| 255 | CPI_METHOD* pList | 244 | CPIEXEC_METHOD* pList |
| 256 | ); | 245 | ); |
| 257 | static void FreeRoleAssignmentList( | 246 | static void FreeRoleAssignmentList( |
| 258 | CPI_ROLE_ASSIGNMENT* pList | 247 | CPIEXEC_ROLE_ASSIGNMENT* pList |
| 259 | ); | 248 | ); |
| 260 | 249 | ||
| 261 | 250 | ||
| @@ -648,7 +637,7 @@ static HRESULT UnregisterAssembly( | |||
| 648 | // TODO: handle rollbacks | 637 | // TODO: handle rollbacks |
| 649 | 638 | ||
| 650 | // get applications collection | 639 | // get applications collection |
| 651 | hr = CpiGetApplicationsCollection(pAttrs->pwzPartID, &piColl); | 640 | hr = CpiExecGetApplicationsCollection(pAttrs->pwzPartID, &piColl); |
| 652 | ExitOnFailure(hr, "Failed to get applications collection"); | 641 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 653 | 642 | ||
| 654 | if (S_FALSE == hr) | 643 | if (S_FALSE == hr) |
| @@ -993,7 +982,7 @@ static HRESULT RegisterNativeAssembly( | |||
| 993 | ExitOnNull(bstrPSDllPath, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for tlb path"); | 982 | ExitOnNull(bstrPSDllPath, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for tlb path"); |
| 994 | 983 | ||
| 995 | // get catalog | 984 | // get catalog |
| 996 | hr = CpiGetAdminCatalog(&piCatalog); | 985 | hr = CpiExecGetAdminCatalog(&piCatalog); |
| 997 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 986 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 998 | 987 | ||
| 999 | // get ICOMAdminCatalog2 interface | 988 | // get ICOMAdminCatalog2 interface |
| @@ -1154,12 +1143,12 @@ LExit: | |||
| 1154 | 1143 | ||
| 1155 | static HRESULT RemoveComponents( | 1144 | static HRESULT RemoveComponents( |
| 1156 | ICatalogCollection* piCompColl, | 1145 | ICatalogCollection* piCompColl, |
| 1157 | CPI_COMPONENT* pCompList | 1146 | CPIEXEC_COMPONENT* pCompList |
| 1158 | ) | 1147 | ) |
| 1159 | { | 1148 | { |
| 1160 | HRESULT hr = S_OK; | 1149 | HRESULT hr = S_OK; |
| 1161 | 1150 | ||
| 1162 | for (CPI_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) | 1151 | for (CPIEXEC_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) |
| 1163 | { | 1152 | { |
| 1164 | // remove | 1153 | // remove |
| 1165 | hr = CpiRemoveCollectionObject(piCompColl, pItm->wzCLSID, NULL, FALSE); | 1154 | hr = CpiRemoveCollectionObject(piCompColl, pItm->wzCLSID, NULL, FALSE); |
| @@ -1291,7 +1280,7 @@ static void FreeRoleAssignmentsAttributes( | |||
| 1291 | static HRESULT ConfigureComponents( | 1280 | static HRESULT ConfigureComponents( |
| 1292 | LPCWSTR pwzPartID, | 1281 | LPCWSTR pwzPartID, |
| 1293 | LPCWSTR pwzAppID, | 1282 | LPCWSTR pwzAppID, |
| 1294 | CPI_COMPONENT* pCompList, | 1283 | CPIEXEC_COMPONENT* pCompList, |
| 1295 | BOOL fCreate, | 1284 | BOOL fCreate, |
| 1296 | BOOL fProgress | 1285 | BOOL fProgress |
| 1297 | ) | 1286 | ) |
| @@ -1313,7 +1302,7 @@ static HRESULT ConfigureComponents( | |||
| 1313 | ExitOnFailure(hr, "Failed to get components collection"); | 1302 | ExitOnFailure(hr, "Failed to get components collection"); |
| 1314 | 1303 | ||
| 1315 | // read components | 1304 | // read components |
| 1316 | for (CPI_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) | 1305 | for (CPIEXEC_COMPONENT* pItm = pCompList; pItm; pItm = pItm->pNext) |
| 1317 | { | 1306 | { |
| 1318 | // progress message | 1307 | // progress message |
| 1319 | if (fProgress) | 1308 | if (fProgress) |
| @@ -1375,7 +1364,7 @@ LExit: | |||
| 1375 | static HRESULT ConfigureInterfaces( | 1364 | static HRESULT ConfigureInterfaces( |
| 1376 | ICatalogCollection* piCompColl, | 1365 | ICatalogCollection* piCompColl, |
| 1377 | ICatalogObject* piCompObj, | 1366 | ICatalogObject* piCompObj, |
| 1378 | CPI_INTERFACE* pIntfList, | 1367 | CPIEXEC_INTERFACE* pIntfList, |
| 1379 | BOOL fCreate | 1368 | BOOL fCreate |
| 1380 | ) | 1369 | ) |
| 1381 | { | 1370 | { |
| @@ -1396,7 +1385,7 @@ static HRESULT ConfigureInterfaces( | |||
| 1396 | ExitOnFailure(hr, "Failed to get interfaces collection"); | 1385 | ExitOnFailure(hr, "Failed to get interfaces collection"); |
| 1397 | 1386 | ||
| 1398 | // read interfaces | 1387 | // read interfaces |
| 1399 | for (CPI_INTERFACE* pItm = pIntfList; pItm; pItm = pItm->pNext) | 1388 | for (CPIEXEC_INTERFACE* pItm = pIntfList; pItm; pItm = pItm->pNext) |
| 1400 | { | 1389 | { |
| 1401 | // find interface | 1390 | // find interface |
| 1402 | hr = CpiFindCollectionObjectByStringKey(piIntfColl, pItm->wzIID, &piIntfObj); | 1391 | hr = CpiFindCollectionObjectByStringKey(piIntfColl, pItm->wzIID, &piIntfObj); |
| @@ -1448,7 +1437,7 @@ LExit: | |||
| 1448 | static HRESULT ConfigureMethods( | 1437 | static HRESULT ConfigureMethods( |
| 1449 | ICatalogCollection* piIntfColl, | 1438 | ICatalogCollection* piIntfColl, |
| 1450 | ICatalogObject* piIntfObj, | 1439 | ICatalogObject* piIntfObj, |
| 1451 | CPI_METHOD* pMethList, | 1440 | CPIEXEC_METHOD* pMethList, |
| 1452 | BOOL fCreate | 1441 | BOOL fCreate |
| 1453 | ) | 1442 | ) |
| 1454 | { | 1443 | { |
| @@ -1469,7 +1458,7 @@ static HRESULT ConfigureMethods( | |||
| 1469 | ExitOnFailure(hr, "Failed to get methods collection"); | 1458 | ExitOnFailure(hr, "Failed to get methods collection"); |
| 1470 | 1459 | ||
| 1471 | // read methods | 1460 | // read methods |
| 1472 | for (CPI_METHOD* pItm = pMethList; pItm; pItm = pItm->pNext) | 1461 | for (CPIEXEC_METHOD* pItm = pMethList; pItm; pItm = pItm->pNext) |
| 1473 | { | 1462 | { |
| 1474 | // find method | 1463 | // find method |
| 1475 | if (*pItm->wzIndex) | 1464 | if (*pItm->wzIndex) |
| @@ -1519,7 +1508,7 @@ static HRESULT ConfigureRoleAssignments( | |||
| 1519 | LPCWSTR pwzCollName, | 1508 | LPCWSTR pwzCollName, |
| 1520 | ICatalogCollection* piCompColl, | 1509 | ICatalogCollection* piCompColl, |
| 1521 | ICatalogObject* piCompObj, | 1510 | ICatalogObject* piCompObj, |
| 1522 | CPI_ROLE_ASSIGNMENT* pRoleList, | 1511 | CPIEXEC_ROLE_ASSIGNMENT* pRoleList, |
| 1523 | BOOL fCreate | 1512 | BOOL fCreate |
| 1524 | ) | 1513 | ) |
| 1525 | { | 1514 | { |
| @@ -1531,7 +1520,7 @@ static HRESULT ConfigureRoleAssignments( | |||
| 1531 | long lChanges = 0; | 1520 | long lChanges = 0; |
| 1532 | 1521 | ||
| 1533 | // get roles collection | 1522 | // get roles collection |
| 1534 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, pwzCollName, &piRoleColl); | 1523 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, pwzCollName, &piRoleColl); |
| 1535 | if (S_FALSE == hr) | 1524 | if (S_FALSE == hr) |
| 1536 | if (fCreate) | 1525 | if (fCreate) |
| 1537 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); | 1526 | hr = HRESULT_FROM_WIN32(ERROR_NOT_FOUND); |
| @@ -1540,7 +1529,7 @@ static HRESULT ConfigureRoleAssignments( | |||
| 1540 | ExitOnFailure(hr, "Failed to get role assignments collection"); | 1529 | ExitOnFailure(hr, "Failed to get role assignments collection"); |
| 1541 | 1530 | ||
| 1542 | // read roles | 1531 | // read roles |
| 1543 | for (CPI_ROLE_ASSIGNMENT* pItm = pRoleList; pItm; pItm = pItm->pNext) | 1532 | for (CPIEXEC_ROLE_ASSIGNMENT* pItm = pRoleList; pItm; pItm = pItm->pNext) |
| 1544 | { | 1533 | { |
| 1545 | if (fCreate) | 1534 | if (fCreate) |
| 1546 | { | 1535 | { |
| @@ -1588,14 +1577,14 @@ LExit: | |||
| 1588 | 1577 | ||
| 1589 | static HRESULT ReadComponentList( | 1578 | static HRESULT ReadComponentList( |
| 1590 | LPWSTR* ppwzData, | 1579 | LPWSTR* ppwzData, |
| 1591 | CPI_COMPONENT** ppCompList | 1580 | CPIEXEC_COMPONENT** ppCompList |
| 1592 | ) | 1581 | ) |
| 1593 | { | 1582 | { |
| 1594 | HRESULT hr = S_OK; | 1583 | HRESULT hr = S_OK; |
| 1595 | 1584 | ||
| 1596 | LPWSTR pwzData = NULL; | 1585 | LPWSTR pwzData = NULL; |
| 1597 | 1586 | ||
| 1598 | CPI_COMPONENT* pItm = NULL; | 1587 | CPIEXEC_COMPONENT* pItm = NULL; |
| 1599 | 1588 | ||
| 1600 | int iCnt = 0; | 1589 | int iCnt = 0; |
| 1601 | 1590 | ||
| @@ -1606,7 +1595,7 @@ static HRESULT ReadComponentList( | |||
| 1606 | // read components | 1595 | // read components |
| 1607 | for (int i = 0; i < iCnt; i++) | 1596 | for (int i = 0; i < iCnt; i++) |
| 1608 | { | 1597 | { |
| 1609 | pItm = (CPI_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_COMPONENT)); | 1598 | pItm = (CPIEXEC_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_COMPONENT)); |
| 1610 | if (!pItm) | 1599 | if (!pItm) |
| 1611 | ExitFunction1(hr = E_OUTOFMEMORY); | 1600 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1612 | 1601 | ||
| @@ -1648,14 +1637,14 @@ LExit: | |||
| 1648 | 1637 | ||
| 1649 | static HRESULT ReadInterfaceList( | 1638 | static HRESULT ReadInterfaceList( |
| 1650 | LPWSTR* ppwzData, | 1639 | LPWSTR* ppwzData, |
| 1651 | CPI_INTERFACE** ppIntfList | 1640 | CPIEXEC_INTERFACE** ppIntfList |
| 1652 | ) | 1641 | ) |
| 1653 | { | 1642 | { |
| 1654 | HRESULT hr = S_OK; | 1643 | HRESULT hr = S_OK; |
| 1655 | 1644 | ||
| 1656 | LPWSTR pwzData = NULL; | 1645 | LPWSTR pwzData = NULL; |
| 1657 | 1646 | ||
| 1658 | CPI_INTERFACE* pItm = NULL; | 1647 | CPIEXEC_INTERFACE* pItm = NULL; |
| 1659 | 1648 | ||
| 1660 | int iCnt = 0; | 1649 | int iCnt = 0; |
| 1661 | 1650 | ||
| @@ -1666,7 +1655,7 @@ static HRESULT ReadInterfaceList( | |||
| 1666 | // read interfaces | 1655 | // read interfaces |
| 1667 | for (int i = 0; i < iCnt; i++) | 1656 | for (int i = 0; i < iCnt; i++) |
| 1668 | { | 1657 | { |
| 1669 | pItm = (CPI_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_INTERFACE)); | 1658 | pItm = (CPIEXEC_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_INTERFACE)); |
| 1670 | if (!pItm) | 1659 | if (!pItm) |
| 1671 | ExitFunction1(hr = E_OUTOFMEMORY); | 1660 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1672 | 1661 | ||
| @@ -1708,14 +1697,14 @@ LExit: | |||
| 1708 | 1697 | ||
| 1709 | static HRESULT ReadMethodList( | 1698 | static HRESULT ReadMethodList( |
| 1710 | LPWSTR* ppwzData, | 1699 | LPWSTR* ppwzData, |
| 1711 | CPI_METHOD** ppMethList | 1700 | CPIEXEC_METHOD** ppMethList |
| 1712 | ) | 1701 | ) |
| 1713 | { | 1702 | { |
| 1714 | HRESULT hr = S_OK; | 1703 | HRESULT hr = S_OK; |
| 1715 | 1704 | ||
| 1716 | LPWSTR pwzData = NULL; | 1705 | LPWSTR pwzData = NULL; |
| 1717 | 1706 | ||
| 1718 | CPI_METHOD* pItm = NULL; | 1707 | CPIEXEC_METHOD* pItm = NULL; |
| 1719 | 1708 | ||
| 1720 | int iCnt = 0; | 1709 | int iCnt = 0; |
| 1721 | 1710 | ||
| @@ -1726,7 +1715,7 @@ static HRESULT ReadMethodList( | |||
| 1726 | // read methods | 1715 | // read methods |
| 1727 | for (int i = 0; i < iCnt; i++) | 1716 | for (int i = 0; i < iCnt; i++) |
| 1728 | { | 1717 | { |
| 1729 | pItm = (CPI_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_METHOD)); | 1718 | pItm = (CPIEXEC_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_METHOD)); |
| 1730 | if (!pItm) | 1719 | if (!pItm) |
| 1731 | ExitFunction1(hr = E_OUTOFMEMORY); | 1720 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1732 | 1721 | ||
| @@ -1769,14 +1758,14 @@ LExit: | |||
| 1769 | 1758 | ||
| 1770 | static HRESULT ReadRoleAssignmentList( | 1759 | static HRESULT ReadRoleAssignmentList( |
| 1771 | LPWSTR* ppwzData, | 1760 | LPWSTR* ppwzData, |
| 1772 | CPI_ROLE_ASSIGNMENT** ppRoleList | 1761 | CPIEXEC_ROLE_ASSIGNMENT** ppRoleList |
| 1773 | ) | 1762 | ) |
| 1774 | { | 1763 | { |
| 1775 | HRESULT hr = S_OK; | 1764 | HRESULT hr = S_OK; |
| 1776 | 1765 | ||
| 1777 | LPWSTR pwzData = NULL; | 1766 | LPWSTR pwzData = NULL; |
| 1778 | 1767 | ||
| 1779 | CPI_ROLE_ASSIGNMENT* pItm = NULL; | 1768 | CPIEXEC_ROLE_ASSIGNMENT* pItm = NULL; |
| 1780 | 1769 | ||
| 1781 | int iCnt = 0; | 1770 | int iCnt = 0; |
| 1782 | 1771 | ||
| @@ -1787,7 +1776,7 @@ static HRESULT ReadRoleAssignmentList( | |||
| 1787 | // read roles | 1776 | // read roles |
| 1788 | for (int i = 0; i < iCnt; i++) | 1777 | for (int i = 0; i < iCnt; i++) |
| 1789 | { | 1778 | { |
| 1790 | pItm = (CPI_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_ROLE_ASSIGNMENT)); | 1779 | pItm = (CPIEXEC_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPIEXEC_ROLE_ASSIGNMENT)); |
| 1791 | if (!pItm) | 1780 | if (!pItm) |
| 1792 | ExitFunction1(hr = E_OUTOFMEMORY); | 1781 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1793 | 1782 | ||
| @@ -1821,7 +1810,7 @@ LExit: | |||
| 1821 | } | 1810 | } |
| 1822 | 1811 | ||
| 1823 | static void FreeComponentList( | 1812 | static void FreeComponentList( |
| 1824 | CPI_COMPONENT* pList | 1813 | CPIEXEC_COMPONENT* pList |
| 1825 | ) | 1814 | ) |
| 1826 | { | 1815 | { |
| 1827 | while (pList) | 1816 | while (pList) |
| @@ -1833,14 +1822,14 @@ static void FreeComponentList( | |||
| 1833 | if (pList->pInterfaceList) | 1822 | if (pList->pInterfaceList) |
| 1834 | FreeInterfaceList(pList->pInterfaceList); | 1823 | FreeInterfaceList(pList->pInterfaceList); |
| 1835 | 1824 | ||
| 1836 | CPI_COMPONENT* pDelete = pList; | 1825 | CPIEXEC_COMPONENT* pDelete = pList; |
| 1837 | pList = pList->pNext; | 1826 | pList = pList->pNext; |
| 1838 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1827 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 1839 | } | 1828 | } |
| 1840 | } | 1829 | } |
| 1841 | 1830 | ||
| 1842 | static void FreeInterfaceList( | 1831 | static void FreeInterfaceList( |
| 1843 | CPI_INTERFACE* pList | 1832 | CPIEXEC_INTERFACE* pList |
| 1844 | ) | 1833 | ) |
| 1845 | { | 1834 | { |
| 1846 | while (pList) | 1835 | while (pList) |
| @@ -1852,14 +1841,14 @@ static void FreeInterfaceList( | |||
| 1852 | if (pList->pMethodList) | 1841 | if (pList->pMethodList) |
| 1853 | FreeMethodList(pList->pMethodList); | 1842 | FreeMethodList(pList->pMethodList); |
| 1854 | 1843 | ||
| 1855 | CPI_INTERFACE* pDelete = pList; | 1844 | CPIEXEC_INTERFACE* pDelete = pList; |
| 1856 | pList = pList->pNext; | 1845 | pList = pList->pNext; |
| 1857 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1846 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 1858 | } | 1847 | } |
| 1859 | } | 1848 | } |
| 1860 | 1849 | ||
| 1861 | static void FreeMethodList( | 1850 | static void FreeMethodList( |
| 1862 | CPI_METHOD* pList | 1851 | CPIEXEC_METHOD* pList |
| 1863 | ) | 1852 | ) |
| 1864 | { | 1853 | { |
| 1865 | while (pList) | 1854 | while (pList) |
| @@ -1869,19 +1858,19 @@ static void FreeMethodList( | |||
| 1869 | if (pList->pRoleAssignmentList) | 1858 | if (pList->pRoleAssignmentList) |
| 1870 | FreeRoleAssignmentList(pList->pRoleAssignmentList); | 1859 | FreeRoleAssignmentList(pList->pRoleAssignmentList); |
| 1871 | 1860 | ||
| 1872 | CPI_METHOD* pDelete = pList; | 1861 | CPIEXEC_METHOD* pDelete = pList; |
| 1873 | pList = pList->pNext; | 1862 | pList = pList->pNext; |
| 1874 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1863 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 1875 | } | 1864 | } |
| 1876 | } | 1865 | } |
| 1877 | 1866 | ||
| 1878 | static void FreeRoleAssignmentList( | 1867 | static void FreeRoleAssignmentList( |
| 1879 | CPI_ROLE_ASSIGNMENT* pList | 1868 | CPIEXEC_ROLE_ASSIGNMENT* pList |
| 1880 | ) | 1869 | ) |
| 1881 | { | 1870 | { |
| 1882 | while (pList) | 1871 | while (pList) |
| 1883 | { | 1872 | { |
| 1884 | CPI_ROLE_ASSIGNMENT* pDelete = pList; | 1873 | CPIEXEC_ROLE_ASSIGNMENT* pDelete = pList; |
| 1885 | pList = pList->pNext; | 1874 | pList = pList->pNext; |
| 1886 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 1875 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 1887 | } | 1876 | } |
diff --git a/src/ca/cpasmsched.cpp b/src/ca/cpasmsched.cpp index 97ecff61..2d0573a5 100644 --- a/src/ca/cpasmsched.cpp +++ b/src/ca/cpasmsched.cpp | |||
| @@ -169,19 +169,19 @@ static HRESULT InterfacesRead( | |||
| 169 | LPCWSTR pwzCompKey, | 169 | LPCWSTR pwzCompKey, |
| 170 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 170 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 171 | CPI_ASSEMBLY* pAsm, | 171 | CPI_ASSEMBLY* pAsm, |
| 172 | CPI_COMPONENT* pComp | 172 | CPISCHED_COMPONENT* pComp |
| 173 | ); | 173 | ); |
| 174 | static HRESULT MethodsRead( | 174 | static HRESULT MethodsRead( |
| 175 | LPCWSTR pwzIntfKey, | 175 | LPCWSTR pwzIntfKey, |
| 176 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 176 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 177 | CPI_ASSEMBLY* pAsm, | 177 | CPI_ASSEMBLY* pAsm, |
| 178 | CPI_INTERFACE* pIntf | 178 | CPISCHED_INTERFACE* pIntf |
| 179 | ); | 179 | ); |
| 180 | static HRESULT RoleAssignmentsRead( | 180 | static HRESULT RoleAssignmentsRead( |
| 181 | LPCWSTR pwzQuery, | 181 | LPCWSTR pwzQuery, |
| 182 | LPCWSTR pwzKey, | 182 | LPCWSTR pwzKey, |
| 183 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 183 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 184 | CPI_ROLE_ASSIGNMENT** ppRoleList, | 184 | CPISCHED_ROLE_ASSIGNMENT** ppRoleList, |
| 185 | int* piInstallCount, | 185 | int* piInstallCount, |
| 186 | int* piUninstallCount | 186 | int* piUninstallCount |
| 187 | ); | 187 | ); |
| @@ -238,21 +238,21 @@ static HRESULT AddRoleAssignmentsToActionData( | |||
| 238 | LPWSTR* ppwzActionData | 238 | LPWSTR* ppwzActionData |
| 239 | ); | 239 | ); |
| 240 | static HRESULT AddComponentToActionData( | 240 | static HRESULT AddComponentToActionData( |
| 241 | CPI_COMPONENT* pItm, | 241 | CPISCHED_COMPONENT* pItm, |
| 242 | BOOL fInstall, | 242 | BOOL fInstall, |
| 243 | BOOL fProps, | 243 | BOOL fProps, |
| 244 | BOOL fRoles, | 244 | BOOL fRoles, |
| 245 | LPWSTR* ppwzActionData | 245 | LPWSTR* ppwzActionData |
| 246 | ); | 246 | ); |
| 247 | static HRESULT AddInterfaceToActionData( | 247 | static HRESULT AddInterfaceToActionData( |
| 248 | CPI_INTERFACE* pItm, | 248 | CPISCHED_INTERFACE* pItm, |
| 249 | BOOL fInstall, | 249 | BOOL fInstall, |
| 250 | BOOL fProps, | 250 | BOOL fProps, |
| 251 | BOOL fRoles, | 251 | BOOL fRoles, |
| 252 | LPWSTR* ppwzActionData | 252 | LPWSTR* ppwzActionData |
| 253 | ); | 253 | ); |
| 254 | static HRESULT AddMethodToActionData( | 254 | static HRESULT AddMethodToActionData( |
| 255 | CPI_METHOD* pItm, | 255 | CPISCHED_METHOD* pItm, |
| 256 | BOOL fInstall, | 256 | BOOL fInstall, |
| 257 | BOOL fProps, | 257 | BOOL fProps, |
| 258 | BOOL fRoles, | 258 | BOOL fRoles, |
| @@ -261,7 +261,7 @@ static HRESULT AddMethodToActionData( | |||
| 261 | static HRESULT AddRolesToActionData( | 261 | static HRESULT AddRolesToActionData( |
| 262 | int iRoleInstallCount, | 262 | int iRoleInstallCount, |
| 263 | int iRoleUninstallCount, | 263 | int iRoleUninstallCount, |
| 264 | CPI_ROLE_ASSIGNMENT* pRoleList, | 264 | CPISCHED_ROLE_ASSIGNMENT* pRoleList, |
| 265 | BOOL fInstall, | 265 | BOOL fInstall, |
| 266 | BOOL fRoles, | 266 | BOOL fRoles, |
| 267 | LPWSTR* ppwzActionData | 267 | LPWSTR* ppwzActionData |
| @@ -284,16 +284,16 @@ static void ModuleFree( | |||
| 284 | CPI_MODULE* pItm | 284 | CPI_MODULE* pItm |
| 285 | ); | 285 | ); |
| 286 | static void ComponentsFreeList( | 286 | static void ComponentsFreeList( |
| 287 | CPI_COMPONENT* pList | 287 | CPISCHED_COMPONENT* pList |
| 288 | ); | 288 | ); |
| 289 | static void InterfacesFreeList( | 289 | static void InterfacesFreeList( |
| 290 | CPI_INTERFACE* pList | 290 | CPISCHED_INTERFACE* pList |
| 291 | ); | 291 | ); |
| 292 | static void MethodsFreeList( | 292 | static void MethodsFreeList( |
| 293 | CPI_METHOD* pList | 293 | CPISCHED_METHOD* pList |
| 294 | ); | 294 | ); |
| 295 | static void RoleAssignmentsFreeList( | 295 | static void RoleAssignmentsFreeList( |
| 296 | CPI_ROLE_ASSIGNMENT* pList | 296 | CPISCHED_ROLE_ASSIGNMENT* pList |
| 297 | ); | 297 | ); |
| 298 | 298 | ||
| 299 | 299 | ||
| @@ -686,7 +686,7 @@ LExit: | |||
| 686 | 686 | ||
| 687 | HRESULT CpiGetSubscriptionsCollForComponent( | 687 | HRESULT CpiGetSubscriptionsCollForComponent( |
| 688 | CPI_ASSEMBLY* pAsm, | 688 | CPI_ASSEMBLY* pAsm, |
| 689 | CPI_COMPONENT* pComp, | 689 | CPISCHED_COMPONENT* pComp, |
| 690 | ICatalogCollection** ppiSubsColl | 690 | ICatalogCollection** ppiSubsColl |
| 691 | ) | 691 | ) |
| 692 | { | 692 | { |
| @@ -713,7 +713,7 @@ HRESULT CpiGetSubscriptionsCollForComponent( | |||
| 713 | ExitFunction(); // exit with hr = S_FALSE | 713 | ExitFunction(); // exit with hr = S_FALSE |
| 714 | 714 | ||
| 715 | // get roles collection | 715 | // get roles collection |
| 716 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", &pComp->piSubsColl); | 716 | hr = CpiSchedGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", &pComp->piSubsColl); |
| 717 | ExitOnFailure(hr, "Failed to get subscriptions collection"); | 717 | ExitOnFailure(hr, "Failed to get subscriptions collection"); |
| 718 | } | 718 | } |
| 719 | 719 | ||
| @@ -1372,7 +1372,7 @@ static HRESULT ComponentsRead( | |||
| 1372 | PMSIHANDLE hView; | 1372 | PMSIHANDLE hView; |
| 1373 | PMSIHANDLE hRec; | 1373 | PMSIHANDLE hRec; |
| 1374 | PMSIHANDLE hRecKey; | 1374 | PMSIHANDLE hRecKey; |
| 1375 | CPI_COMPONENT* pItm = NULL; | 1375 | CPISCHED_COMPONENT* pItm = NULL; |
| 1376 | LPWSTR pwzData = NULL; | 1376 | LPWSTR pwzData = NULL; |
| 1377 | 1377 | ||
| 1378 | // create parameter record | 1378 | // create parameter record |
| @@ -1390,7 +1390,7 @@ static HRESULT ComponentsRead( | |||
| 1390 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1390 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
| 1391 | { | 1391 | { |
| 1392 | // create entry | 1392 | // create entry |
| 1393 | pItm = (CPI_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_COMPONENT)); | 1393 | pItm = (CPISCHED_COMPONENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_COMPONENT)); |
| 1394 | if (!pItm) | 1394 | if (!pItm) |
| 1395 | ExitFunction1(hr = E_OUTOFMEMORY); | 1395 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1396 | 1396 | ||
| @@ -1455,14 +1455,14 @@ static HRESULT InterfacesRead( | |||
| 1455 | LPCWSTR pwzCompKey, | 1455 | LPCWSTR pwzCompKey, |
| 1456 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1456 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 1457 | CPI_ASSEMBLY* pAsm, | 1457 | CPI_ASSEMBLY* pAsm, |
| 1458 | CPI_COMPONENT* pComp | 1458 | CPISCHED_COMPONENT* pComp |
| 1459 | ) | 1459 | ) |
| 1460 | { | 1460 | { |
| 1461 | HRESULT hr = S_OK; | 1461 | HRESULT hr = S_OK; |
| 1462 | PMSIHANDLE hView; | 1462 | PMSIHANDLE hView; |
| 1463 | PMSIHANDLE hRec; | 1463 | PMSIHANDLE hRec; |
| 1464 | PMSIHANDLE hRecKey; | 1464 | PMSIHANDLE hRecKey; |
| 1465 | CPI_INTERFACE* pItm = NULL; | 1465 | CPISCHED_INTERFACE* pItm = NULL; |
| 1466 | LPWSTR pwzData = NULL; | 1466 | LPWSTR pwzData = NULL; |
| 1467 | 1467 | ||
| 1468 | // create parameter record | 1468 | // create parameter record |
| @@ -1480,7 +1480,7 @@ static HRESULT InterfacesRead( | |||
| 1480 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1480 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
| 1481 | { | 1481 | { |
| 1482 | // create entry | 1482 | // create entry |
| 1483 | pItm = (CPI_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_INTERFACE)); | 1483 | pItm = (CPISCHED_INTERFACE*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_INTERFACE)); |
| 1484 | if (!pItm) | 1484 | if (!pItm) |
| 1485 | ExitFunction1(hr = E_OUTOFMEMORY); | 1485 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1486 | 1486 | ||
| @@ -1545,12 +1545,12 @@ static HRESULT MethodsRead( | |||
| 1545 | LPCWSTR pwzIntfKey, | 1545 | LPCWSTR pwzIntfKey, |
| 1546 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1546 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 1547 | CPI_ASSEMBLY* pAsm, | 1547 | CPI_ASSEMBLY* pAsm, |
| 1548 | CPI_INTERFACE* pIntf | 1548 | CPISCHED_INTERFACE* pIntf |
| 1549 | ) | 1549 | ) |
| 1550 | { | 1550 | { |
| 1551 | HRESULT hr = S_OK; | 1551 | HRESULT hr = S_OK; |
| 1552 | PMSIHANDLE hView, hRec, hRecKey; | 1552 | PMSIHANDLE hView, hRec, hRecKey; |
| 1553 | CPI_METHOD* pItm = NULL; | 1553 | CPISCHED_METHOD* pItm = NULL; |
| 1554 | LPWSTR pwzData = NULL; | 1554 | LPWSTR pwzData = NULL; |
| 1555 | 1555 | ||
| 1556 | // create parameter record | 1556 | // create parameter record |
| @@ -1568,7 +1568,7 @@ static HRESULT MethodsRead( | |||
| 1568 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) | 1568 | while (S_OK == (hr = WcaFetchRecord(hView, &hRec))) |
| 1569 | { | 1569 | { |
| 1570 | // create entry | 1570 | // create entry |
| 1571 | pItm = (CPI_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_METHOD)); | 1571 | pItm = (CPISCHED_METHOD*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_METHOD)); |
| 1572 | if (!pItm) | 1572 | if (!pItm) |
| 1573 | ExitFunction1(hr = E_OUTOFMEMORY); | 1573 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1574 | 1574 | ||
| @@ -1635,7 +1635,7 @@ static HRESULT RoleAssignmentsRead( | |||
| 1635 | LPCWSTR pwzQuery, | 1635 | LPCWSTR pwzQuery, |
| 1636 | LPCWSTR pwzKey, | 1636 | LPCWSTR pwzKey, |
| 1637 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, | 1637 | CPI_APPLICATION_ROLE_LIST* pAppRoleList, |
| 1638 | CPI_ROLE_ASSIGNMENT** ppRoleList, | 1638 | CPISCHED_ROLE_ASSIGNMENT** ppRoleList, |
| 1639 | int* piInstallCount, | 1639 | int* piInstallCount, |
| 1640 | int* piUninstallCount | 1640 | int* piUninstallCount |
| 1641 | ) | 1641 | ) |
| @@ -1645,7 +1645,7 @@ static HRESULT RoleAssignmentsRead( | |||
| 1645 | 1645 | ||
| 1646 | PMSIHANDLE hView, hRec, hRecKey; | 1646 | PMSIHANDLE hView, hRec, hRecKey; |
| 1647 | 1647 | ||
| 1648 | CPI_ROLE_ASSIGNMENT* pItm = NULL; | 1648 | CPISCHED_ROLE_ASSIGNMENT* pItm = NULL; |
| 1649 | LPWSTR pwzData = NULL; | 1649 | LPWSTR pwzData = NULL; |
| 1650 | BOOL fMatchingArchitecture = FALSE; | 1650 | BOOL fMatchingArchitecture = FALSE; |
| 1651 | 1651 | ||
| @@ -1677,7 +1677,7 @@ static HRESULT RoleAssignmentsRead( | |||
| 1677 | } | 1677 | } |
| 1678 | 1678 | ||
| 1679 | // create entry | 1679 | // create entry |
| 1680 | pItm = (CPI_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPI_ROLE_ASSIGNMENT)); | 1680 | pItm = (CPISCHED_ROLE_ASSIGNMENT*)::HeapAlloc(::GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(CPISCHED_ROLE_ASSIGNMENT)); |
| 1681 | if (!pItm) | 1681 | if (!pItm) |
| 1682 | ExitFunction1(hr = E_OUTOFMEMORY); | 1682 | ExitFunction1(hr = E_OUTOFMEMORY); |
| 1683 | 1683 | ||
| @@ -1786,7 +1786,7 @@ static HRESULT AddAssemblyToActionData( | |||
| 1786 | 1786 | ||
| 1787 | if (iCompCount) | 1787 | if (iCompCount) |
| 1788 | { | 1788 | { |
| 1789 | for (CPI_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) | 1789 | for (CPISCHED_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) |
| 1790 | { | 1790 | { |
| 1791 | hr = AddComponentToActionData(pComp, fInstall, atCreate == iActionType, FALSE, ppwzActionData); | 1791 | hr = AddComponentToActionData(pComp, fInstall, atCreate == iActionType, FALSE, ppwzActionData); |
| 1792 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); | 1792 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); |
| @@ -1834,7 +1834,7 @@ static HRESULT AddRoleAssignmentsToActionData( | |||
| 1834 | hr = WcaWriteIntegerToCaData(pItm->iComponentCount, ppwzActionData); | 1834 | hr = WcaWriteIntegerToCaData(pItm->iComponentCount, ppwzActionData); |
| 1835 | ExitOnFailure(hr, "Failed to add component count to custom action data"); | 1835 | ExitOnFailure(hr, "Failed to add component count to custom action data"); |
| 1836 | 1836 | ||
| 1837 | for (CPI_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) | 1837 | for (CPISCHED_COMPONENT* pComp = pItm->pComponents; pComp; pComp = pComp->pNext) |
| 1838 | { | 1838 | { |
| 1839 | hr = AddComponentToActionData(pComp, fInstall, FALSE, TRUE, ppwzActionData); | 1839 | hr = AddComponentToActionData(pComp, fInstall, FALSE, TRUE, ppwzActionData); |
| 1840 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); | 1840 | ExitOnFailure(hr, "Failed to add component to custom action data, component: %S", pComp->wzKey); |
| @@ -1847,7 +1847,7 @@ LExit: | |||
| 1847 | } | 1847 | } |
| 1848 | 1848 | ||
| 1849 | static HRESULT AddComponentToActionData( | 1849 | static HRESULT AddComponentToActionData( |
| 1850 | CPI_COMPONENT* pItm, | 1850 | CPISCHED_COMPONENT* pItm, |
| 1851 | BOOL fInstall, | 1851 | BOOL fInstall, |
| 1852 | BOOL fProps, | 1852 | BOOL fProps, |
| 1853 | BOOL fRoles, | 1853 | BOOL fRoles, |
| @@ -1875,7 +1875,7 @@ static HRESULT AddComponentToActionData( | |||
| 1875 | 1875 | ||
| 1876 | if (iIntfCount) | 1876 | if (iIntfCount) |
| 1877 | { | 1877 | { |
| 1878 | for (CPI_INTERFACE* pIntf = pItm->pInterfaces; pIntf; pIntf = pIntf->pNext) | 1878 | for (CPISCHED_INTERFACE* pIntf = pItm->pInterfaces; pIntf; pIntf = pIntf->pNext) |
| 1879 | { | 1879 | { |
| 1880 | hr = AddInterfaceToActionData(pIntf, fInstall, fProps, fRoles, ppwzActionData); | 1880 | hr = AddInterfaceToActionData(pIntf, fInstall, fProps, fRoles, ppwzActionData); |
| 1881 | ExitOnFailure(hr, "Failed to add interface custom action data, interface: %S", pIntf->wzKey); | 1881 | ExitOnFailure(hr, "Failed to add interface custom action data, interface: %S", pIntf->wzKey); |
| @@ -1889,7 +1889,7 @@ LExit: | |||
| 1889 | } | 1889 | } |
| 1890 | 1890 | ||
| 1891 | static HRESULT AddInterfaceToActionData( | 1891 | static HRESULT AddInterfaceToActionData( |
| 1892 | CPI_INTERFACE* pItm, | 1892 | CPISCHED_INTERFACE* pItm, |
| 1893 | BOOL fInstall, | 1893 | BOOL fInstall, |
| 1894 | BOOL fProps, | 1894 | BOOL fProps, |
| 1895 | BOOL fRoles, | 1895 | BOOL fRoles, |
| @@ -1914,7 +1914,7 @@ static HRESULT AddInterfaceToActionData( | |||
| 1914 | hr = WcaWriteIntegerToCaData(pItm->iMethodCount, ppwzActionData); | 1914 | hr = WcaWriteIntegerToCaData(pItm->iMethodCount, ppwzActionData); |
| 1915 | ExitOnFailure(hr, "Failed to add method count to custom action data"); | 1915 | ExitOnFailure(hr, "Failed to add method count to custom action data"); |
| 1916 | 1916 | ||
| 1917 | for (CPI_METHOD* pMeth = pItm->pMethods; pMeth; pMeth = pMeth->pNext) | 1917 | for (CPISCHED_METHOD* pMeth = pItm->pMethods; pMeth; pMeth = pMeth->pNext) |
| 1918 | { | 1918 | { |
| 1919 | hr = AddMethodToActionData(pMeth, fInstall, fProps, fRoles, ppwzActionData); | 1919 | hr = AddMethodToActionData(pMeth, fInstall, fProps, fRoles, ppwzActionData); |
| 1920 | ExitOnFailure(hr, "Failed to add method custom action data, method: %S", pMeth->wzKey); | 1920 | ExitOnFailure(hr, "Failed to add method custom action data, method: %S", pMeth->wzKey); |
| @@ -1927,7 +1927,7 @@ LExit: | |||
| 1927 | } | 1927 | } |
| 1928 | 1928 | ||
| 1929 | static HRESULT AddMethodToActionData( | 1929 | static HRESULT AddMethodToActionData( |
| 1930 | CPI_METHOD* pItm, | 1930 | CPISCHED_METHOD* pItm, |
| 1931 | BOOL fInstall, | 1931 | BOOL fInstall, |
| 1932 | BOOL fProps, | 1932 | BOOL fProps, |
| 1933 | BOOL fRoles, | 1933 | BOOL fRoles, |
| @@ -1960,7 +1960,7 @@ LExit: | |||
| 1960 | static HRESULT AddRolesToActionData( | 1960 | static HRESULT AddRolesToActionData( |
| 1961 | int iRoleInstallCount, | 1961 | int iRoleInstallCount, |
| 1962 | int iRoleUninstallCount, | 1962 | int iRoleUninstallCount, |
| 1963 | CPI_ROLE_ASSIGNMENT* pRoleList, | 1963 | CPISCHED_ROLE_ASSIGNMENT* pRoleList, |
| 1964 | BOOL fInstall, | 1964 | BOOL fInstall, |
| 1965 | BOOL fRoles, | 1965 | BOOL fRoles, |
| 1966 | LPWSTR* ppwzActionData | 1966 | LPWSTR* ppwzActionData |
| @@ -1974,7 +1974,7 @@ static HRESULT AddRolesToActionData( | |||
| 1974 | 1974 | ||
| 1975 | if (iRoleCount) | 1975 | if (iRoleCount) |
| 1976 | { | 1976 | { |
| 1977 | for (CPI_ROLE_ASSIGNMENT* pRole = pRoleList; pRole; pRole = pRole->pNext) | 1977 | for (CPISCHED_ROLE_ASSIGNMENT* pRole = pRoleList; pRole; pRole = pRole->pNext) |
| 1978 | { | 1978 | { |
| 1979 | // make sure the install state matches the create flag | 1979 | // make sure the install state matches the create flag |
| 1980 | if (fInstall ? !WcaIsInstalling(pRole->isInstalled, pRole->isAction) : !WcaIsUninstalling(pRole->isInstalled, pRole->isAction)) | 1980 | if (fInstall ? !WcaIsInstalling(pRole->isInstalled, pRole->isAction) : !WcaIsUninstalling(pRole->isInstalled, pRole->isAction)) |
| @@ -2061,7 +2061,7 @@ static void ModuleFree( | |||
| 2061 | } | 2061 | } |
| 2062 | 2062 | ||
| 2063 | static void ComponentsFreeList( | 2063 | static void ComponentsFreeList( |
| 2064 | CPI_COMPONENT* pList | 2064 | CPISCHED_COMPONENT* pList |
| 2065 | ) | 2065 | ) |
| 2066 | { | 2066 | { |
| 2067 | while (pList) | 2067 | while (pList) |
| @@ -2077,14 +2077,14 @@ static void ComponentsFreeList( | |||
| 2077 | 2077 | ||
| 2078 | ReleaseObject(pList->piSubsColl); | 2078 | ReleaseObject(pList->piSubsColl); |
| 2079 | 2079 | ||
| 2080 | CPI_COMPONENT* pDelete = pList; | 2080 | CPISCHED_COMPONENT* pDelete = pList; |
| 2081 | pList = pList->pNext; | 2081 | pList = pList->pNext; |
| 2082 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2082 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 2083 | } | 2083 | } |
| 2084 | } | 2084 | } |
| 2085 | 2085 | ||
| 2086 | static void InterfacesFreeList( | 2086 | static void InterfacesFreeList( |
| 2087 | CPI_INTERFACE* pList | 2087 | CPISCHED_INTERFACE* pList |
| 2088 | ) | 2088 | ) |
| 2089 | { | 2089 | { |
| 2090 | while (pList) | 2090 | while (pList) |
| @@ -2098,14 +2098,14 @@ static void InterfacesFreeList( | |||
| 2098 | if (pList->pMethods) | 2098 | if (pList->pMethods) |
| 2099 | MethodsFreeList(pList->pMethods); | 2099 | MethodsFreeList(pList->pMethods); |
| 2100 | 2100 | ||
| 2101 | CPI_INTERFACE* pDelete = pList; | 2101 | CPISCHED_INTERFACE* pDelete = pList; |
| 2102 | pList = pList->pNext; | 2102 | pList = pList->pNext; |
| 2103 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2103 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 2104 | } | 2104 | } |
| 2105 | } | 2105 | } |
| 2106 | 2106 | ||
| 2107 | static void MethodsFreeList( | 2107 | static void MethodsFreeList( |
| 2108 | CPI_METHOD* pList | 2108 | CPISCHED_METHOD* pList |
| 2109 | ) | 2109 | ) |
| 2110 | { | 2110 | { |
| 2111 | while (pList) | 2111 | while (pList) |
| @@ -2116,19 +2116,19 @@ static void MethodsFreeList( | |||
| 2116 | if (pList->pRoles) | 2116 | if (pList->pRoles) |
| 2117 | RoleAssignmentsFreeList(pList->pRoles); | 2117 | RoleAssignmentsFreeList(pList->pRoles); |
| 2118 | 2118 | ||
| 2119 | CPI_METHOD* pDelete = pList; | 2119 | CPISCHED_METHOD* pDelete = pList; |
| 2120 | pList = pList->pNext; | 2120 | pList = pList->pNext; |
| 2121 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2121 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 2122 | } | 2122 | } |
| 2123 | } | 2123 | } |
| 2124 | 2124 | ||
| 2125 | static void RoleAssignmentsFreeList( | 2125 | static void RoleAssignmentsFreeList( |
| 2126 | CPI_ROLE_ASSIGNMENT* pList | 2126 | CPISCHED_ROLE_ASSIGNMENT* pList |
| 2127 | ) | 2127 | ) |
| 2128 | { | 2128 | { |
| 2129 | while (pList) | 2129 | while (pList) |
| 2130 | { | 2130 | { |
| 2131 | CPI_ROLE_ASSIGNMENT* pDelete = pList; | 2131 | CPISCHED_ROLE_ASSIGNMENT* pDelete = pList; |
| 2132 | pList = pList->pNext; | 2132 | pList = pList->pNext; |
| 2133 | ::HeapFree(::GetProcessHeap(), 0, pDelete); | 2133 | ::HeapFree(::GetProcessHeap(), 0, pDelete); |
| 2134 | } | 2134 | } |
diff --git a/src/ca/cpasmsched.h b/src/ca/cpasmsched.h index b5a68d7e..ddf4b6c0 100644 --- a/src/ca/cpasmsched.h +++ b/src/ca/cpasmsched.h | |||
| @@ -13,7 +13,7 @@ enum eAssemblyAttributes | |||
| 13 | 13 | ||
| 14 | // structs | 14 | // structs |
| 15 | 15 | ||
| 16 | struct CPI_ROLE_ASSIGNMENT | 16 | struct CPISCHED_ROLE_ASSIGNMENT |
| 17 | { | 17 | { |
| 18 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 18 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
| 19 | 19 | ||
| @@ -21,10 +21,10 @@ struct CPI_ROLE_ASSIGNMENT | |||
| 21 | 21 | ||
| 22 | CPI_APPLICATION_ROLE* pApplicationRole; | 22 | CPI_APPLICATION_ROLE* pApplicationRole; |
| 23 | 23 | ||
| 24 | CPI_ROLE_ASSIGNMENT* pNext; | 24 | CPISCHED_ROLE_ASSIGNMENT* pNext; |
| 25 | }; | 25 | }; |
| 26 | 26 | ||
| 27 | struct CPI_METHOD | 27 | struct CPISCHED_METHOD |
| 28 | { | 28 | { |
| 29 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 29 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
| 30 | WCHAR wzIndex[11 + 1]; | 30 | WCHAR wzIndex[11 + 1]; |
| @@ -35,12 +35,12 @@ struct CPI_METHOD | |||
| 35 | 35 | ||
| 36 | int iRoleInstallCount; | 36 | int iRoleInstallCount; |
| 37 | int iRoleUninstallCount; | 37 | int iRoleUninstallCount; |
| 38 | CPI_ROLE_ASSIGNMENT* pRoles; | 38 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
| 39 | 39 | ||
| 40 | CPI_METHOD* pNext; | 40 | CPISCHED_METHOD* pNext; |
| 41 | }; | 41 | }; |
| 42 | 42 | ||
| 43 | struct CPI_INTERFACE | 43 | struct CPISCHED_INTERFACE |
| 44 | { | 44 | { |
| 45 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 45 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
| 46 | WCHAR wzIID[CPI_MAX_GUID + 1]; | 46 | WCHAR wzIID[CPI_MAX_GUID + 1]; |
| @@ -50,15 +50,15 @@ struct CPI_INTERFACE | |||
| 50 | 50 | ||
| 51 | int iRoleInstallCount; | 51 | int iRoleInstallCount; |
| 52 | int iRoleUninstallCount; | 52 | int iRoleUninstallCount; |
| 53 | CPI_ROLE_ASSIGNMENT* pRoles; | 53 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
| 54 | 54 | ||
| 55 | int iMethodCount; | 55 | int iMethodCount; |
| 56 | CPI_METHOD* pMethods; | 56 | CPISCHED_METHOD* pMethods; |
| 57 | 57 | ||
| 58 | CPI_INTERFACE* pNext; | 58 | CPISCHED_INTERFACE* pNext; |
| 59 | }; | 59 | }; |
| 60 | 60 | ||
| 61 | struct CPI_COMPONENT | 61 | struct CPISCHED_COMPONENT |
| 62 | { | 62 | { |
| 63 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; | 63 | WCHAR wzKey[MAX_DARWIN_KEY + 1]; |
| 64 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; | 64 | WCHAR wzCLSID[CPI_MAX_GUID + 1]; |
| @@ -68,14 +68,14 @@ struct CPI_COMPONENT | |||
| 68 | 68 | ||
| 69 | int iRoleInstallCount; | 69 | int iRoleInstallCount; |
| 70 | int iRoleUninstallCount; | 70 | int iRoleUninstallCount; |
| 71 | CPI_ROLE_ASSIGNMENT* pRoles; | 71 | CPISCHED_ROLE_ASSIGNMENT* pRoles; |
| 72 | 72 | ||
| 73 | int iInterfaceCount; | 73 | int iInterfaceCount; |
| 74 | CPI_INTERFACE* pInterfaces; | 74 | CPISCHED_INTERFACE* pInterfaces; |
| 75 | 75 | ||
| 76 | ICatalogCollection* piSubsColl; | 76 | ICatalogCollection* piSubsColl; |
| 77 | 77 | ||
| 78 | CPI_COMPONENT* pNext; | 78 | CPISCHED_COMPONENT* pNext; |
| 79 | }; | 79 | }; |
| 80 | 80 | ||
| 81 | struct CPI_ASSEMBLY | 81 | struct CPI_ASSEMBLY |
| @@ -89,7 +89,7 @@ struct CPI_ASSEMBLY | |||
| 89 | int iAttributes; | 89 | int iAttributes; |
| 90 | 90 | ||
| 91 | int iComponentCount; | 91 | int iComponentCount; |
| 92 | CPI_COMPONENT* pComponents; | 92 | CPISCHED_COMPONENT* pComponents; |
| 93 | 93 | ||
| 94 | BOOL fReferencedForInstall; | 94 | BOOL fReferencedForInstall; |
| 95 | BOOL fReferencedForUninstall; | 95 | BOOL fReferencedForUninstall; |
| @@ -163,6 +163,6 @@ HRESULT CpiRoleAssignmentsUninstall( | |||
| 163 | ); | 163 | ); |
| 164 | HRESULT CpiGetSubscriptionsCollForComponent( | 164 | HRESULT CpiGetSubscriptionsCollForComponent( |
| 165 | CPI_ASSEMBLY* pAsm, | 165 | CPI_ASSEMBLY* pAsm, |
| 166 | CPI_COMPONENT* pComp, | 166 | CPISCHED_COMPONENT* pComp, |
| 167 | ICatalogCollection** ppiSubsColl | 167 | ICatalogCollection** ppiSubsColl |
| 168 | ); | 168 | ); |
diff --git a/src/ca/cpexec.cpp b/src/ca/cpexec.cpp index fa2446d8..9b1691fc 100644 --- a/src/ca/cpexec.cpp +++ b/src/ca/cpexec.cpp | |||
| @@ -3,29 +3,6 @@ | |||
| 3 | #include "precomp.h" | 3 | #include "precomp.h" |
| 4 | 4 | ||
| 5 | /******************************************************************** | 5 | /******************************************************************** |
| 6 | DllMain - standard entry point for all WiX CustomActions | ||
| 7 | |||
| 8 | ********************************************************************/ | ||
| 9 | extern "C" BOOL WINAPI DllMain( | ||
| 10 | IN HINSTANCE hInst, | ||
| 11 | IN ULONG ulReason, | ||
| 12 | IN LPVOID) | ||
| 13 | { | ||
| 14 | switch(ulReason) | ||
| 15 | { | ||
| 16 | case DLL_PROCESS_ATTACH: | ||
| 17 | WcaGlobalInitialize(hInst); | ||
| 18 | break; | ||
| 19 | |||
| 20 | case DLL_PROCESS_DETACH: | ||
| 21 | WcaGlobalFinalize(); | ||
| 22 | break; | ||
| 23 | } | ||
| 24 | |||
| 25 | return TRUE; | ||
| 26 | } | ||
| 27 | |||
| 28 | /******************************************************************** | ||
| 29 | ComPlusPrepare - CUSTOM ACTION ENTRY POINT | 6 | ComPlusPrepare - CUSTOM ACTION ENTRY POINT |
| 30 | 7 | ||
| 31 | Input: deferred CustomActionData - ComPlusPrepare | 8 | Input: deferred CustomActionData - ComPlusPrepare |
| @@ -133,7 +110,7 @@ extern "C" UINT __stdcall ComPlusInstallExecute(MSIHANDLE hInstall) | |||
| 133 | ExitOnFailure(hr, "Failed to initialize COM"); | 110 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 134 | fInitializedCom = TRUE; | 111 | fInitializedCom = TRUE; |
| 135 | 112 | ||
| 136 | CpiInitialize(); | 113 | CpiExecInitialize(); |
| 137 | 114 | ||
| 138 | // get custom action data | 115 | // get custom action data |
| 139 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 116 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
| @@ -204,7 +181,7 @@ LExit: | |||
| 204 | ::CloseHandle(hRollbackFile); | 181 | ::CloseHandle(hRollbackFile); |
| 205 | 182 | ||
| 206 | // unitialize | 183 | // unitialize |
| 207 | CpiFinalize(); | 184 | CpiExecFinalize(); |
| 208 | 185 | ||
| 209 | if (fInitializedCom) | 186 | if (fInitializedCom) |
| 210 | ::CoUninitialize(); | 187 | ::CoUninitialize(); |
| @@ -239,7 +216,7 @@ extern "C" UINT __stdcall ComPlusInstallExecuteCommit(MSIHANDLE hInstall) | |||
| 239 | ExitOnFailure(hr, "Failed to initialize COM"); | 216 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 240 | fInitializedCom = TRUE; | 217 | fInitializedCom = TRUE; |
| 241 | 218 | ||
| 242 | CpiInitialize(); | 219 | CpiExecInitialize(); |
| 243 | 220 | ||
| 244 | // get custom action data | 221 | // get custom action data |
| 245 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 222 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
| @@ -282,7 +259,7 @@ LExit: | |||
| 282 | ::CloseHandle(hRollbackFile); | 259 | ::CloseHandle(hRollbackFile); |
| 283 | 260 | ||
| 284 | // unitialize | 261 | // unitialize |
| 285 | CpiFinalize(); | 262 | CpiExecFinalize(); |
| 286 | 263 | ||
| 287 | if (fInitializedCom) | 264 | if (fInitializedCom) |
| 288 | ::CoUninitialize(); | 265 | ::CoUninitialize(); |
| @@ -327,7 +304,7 @@ extern "C" UINT __stdcall ComPlusRollbackInstallExecute(MSIHANDLE hInstall) | |||
| 327 | ExitOnFailure(hr, "Failed to initialize COM"); | 304 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 328 | fInitializedCom = TRUE; | 305 | fInitializedCom = TRUE; |
| 329 | 306 | ||
| 330 | CpiInitialize(); | 307 | CpiExecInitialize(); |
| 331 | 308 | ||
| 332 | // get custom action data | 309 | // get custom action data |
| 333 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 310 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
| @@ -439,7 +416,7 @@ LExit: | |||
| 439 | CpiFreeRollbackDataList(prdSubscriptions); | 416 | CpiFreeRollbackDataList(prdSubscriptions); |
| 440 | 417 | ||
| 441 | // unitialize | 418 | // unitialize |
| 442 | CpiFinalize(); | 419 | CpiExecFinalize(); |
| 443 | 420 | ||
| 444 | if (fInitializedCom) | 421 | if (fInitializedCom) |
| 445 | ::CoUninitialize(); | 422 | ::CoUninitialize(); |
| @@ -474,7 +451,7 @@ extern "C" UINT __stdcall ComPlusUninstallExecute(MSIHANDLE hInstall) | |||
| 474 | ExitOnFailure(hr, "Failed to initialize COM"); | 451 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 475 | fInitializedCom = TRUE; | 452 | fInitializedCom = TRUE; |
| 476 | 453 | ||
| 477 | CpiInitialize(); | 454 | CpiExecInitialize(); |
| 478 | 455 | ||
| 479 | // get custom action data | 456 | // get custom action data |
| 480 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 457 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
| @@ -545,7 +522,7 @@ LExit: | |||
| 545 | ::CloseHandle(hRollbackFile); | 522 | ::CloseHandle(hRollbackFile); |
| 546 | 523 | ||
| 547 | // unitialize | 524 | // unitialize |
| 548 | CpiFinalize(); | 525 | CpiExecFinalize(); |
| 549 | 526 | ||
| 550 | if (fInitializedCom) | 527 | if (fInitializedCom) |
| 551 | ::CoUninitialize(); | 528 | ::CoUninitialize(); |
| @@ -590,7 +567,7 @@ extern "C" UINT __stdcall ComPlusRollbackUninstallExecute(MSIHANDLE hInstall) | |||
| 590 | ExitOnFailure(hr, "Failed to initialize COM"); | 567 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 591 | fInitializedCom = TRUE; | 568 | fInitializedCom = TRUE; |
| 592 | 569 | ||
| 593 | CpiInitialize(); | 570 | CpiExecInitialize(); |
| 594 | 571 | ||
| 595 | // get custom action data | 572 | // get custom action data |
| 596 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); | 573 | hr = WcaGetProperty(L"CustomActionData", &pwzCustomActionData); |
| @@ -694,7 +671,7 @@ LExit: | |||
| 694 | CpiFreeRollbackDataList(prdSubscriptions); | 671 | CpiFreeRollbackDataList(prdSubscriptions); |
| 695 | 672 | ||
| 696 | // unitialize | 673 | // unitialize |
| 697 | CpiFinalize(); | 674 | CpiExecFinalize(); |
| 698 | 675 | ||
| 699 | if (fInitializedCom) | 676 | if (fInitializedCom) |
| 700 | ::CoUninitialize(); | 677 | ::CoUninitialize(); |
diff --git a/src/ca/cppartexec.cpp b/src/ca/cppartexec.cpp index d8c30c6a..673bdaf9 100644 --- a/src/ca/cppartexec.cpp +++ b/src/ca/cppartexec.cpp | |||
| @@ -399,7 +399,7 @@ static HRESULT CreatePartition( | |||
| 399 | WcaLog(LOGMSG_VERBOSE, "Creating partition, key: %S", pAttrs->pwzKey); | 399 | WcaLog(LOGMSG_VERBOSE, "Creating partition, key: %S", pAttrs->pwzKey); |
| 400 | 400 | ||
| 401 | // get partitions collection | 401 | // get partitions collection |
| 402 | hr = CpiGetPartitionsCollection(&piPartColl); | 402 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
| 403 | ExitOnFailure(hr, "Failed to get partitions collection"); | 403 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 404 | 404 | ||
| 405 | // check if partition exists | 405 | // check if partition exists |
| @@ -456,7 +456,7 @@ static HRESULT RemovePartition( | |||
| 456 | WcaLog(LOGMSG_VERBOSE, "Removing partition, key: %S", pAttrs->pwzKey); | 456 | WcaLog(LOGMSG_VERBOSE, "Removing partition, key: %S", pAttrs->pwzKey); |
| 457 | 457 | ||
| 458 | // get partitions collection | 458 | // get partitions collection |
| 459 | hr = CpiGetPartitionsCollection(&piPartColl); | 459 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
| 460 | ExitOnFailure(hr, "Failed to get partitions collection"); | 460 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 461 | 461 | ||
| 462 | // remove | 462 | // remove |
diff --git a/src/ca/cppartsched.cpp b/src/ca/cppartsched.cpp index 6643a50b..7cd98791 100644 --- a/src/ca/cppartsched.cpp +++ b/src/ca/cppartsched.cpp | |||
| @@ -199,7 +199,7 @@ HRESULT CpiPartitionsVerifyInstall( | |||
| 199 | // get partitions collection | 199 | // get partitions collection |
| 200 | if (!piPartColl) | 200 | if (!piPartColl) |
| 201 | { | 201 | { |
| 202 | hr = CpiGetPartitionsCollection(&piPartColl); | 202 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
| 203 | ExitOnFailure(hr, "Failed to get partitions collection"); | 203 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 204 | } | 204 | } |
| 205 | 205 | ||
| @@ -336,7 +336,7 @@ HRESULT CpiPartitionsVerifyUninstall( | |||
| 336 | // get partitions collection | 336 | // get partitions collection |
| 337 | if (!piPartColl) | 337 | if (!piPartColl) |
| 338 | { | 338 | { |
| 339 | hr = CpiGetPartitionsCollection(&piPartColl); | 339 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
| 340 | ExitOnFailure(hr, "Failed to get partitions collection"); | 340 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 341 | } | 341 | } |
| 342 | 342 | ||
| @@ -526,7 +526,7 @@ HRESULT CpiGetApplicationsCollForPartition( | |||
| 526 | if (!pPart->piApplicationsColl) | 526 | if (!pPart->piApplicationsColl) |
| 527 | { | 527 | { |
| 528 | // get partitions collection from catalog | 528 | // get partitions collection from catalog |
| 529 | hr = CpiGetPartitionsCollection(&piPartColl); | 529 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
| 530 | ExitOnFailure(hr, "Failed to get partitions collection"); | 530 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 531 | 531 | ||
| 532 | // find application object | 532 | // find application object |
| @@ -540,7 +540,7 @@ HRESULT CpiGetApplicationsCollForPartition( | |||
| 540 | } | 540 | } |
| 541 | 541 | ||
| 542 | // get roles collection | 542 | // get roles collection |
| 543 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", &pPart->piApplicationsColl); | 543 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"Applications", &pPart->piApplicationsColl); |
| 544 | ExitOnFailure(hr, "Failed to get applications collection"); | 544 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 545 | } | 545 | } |
| 546 | 546 | ||
| @@ -576,7 +576,7 @@ HRESULT CpiGetRolesCollForPartition( | |||
| 576 | if (!pPart->piRolesColl) | 576 | if (!pPart->piRolesColl) |
| 577 | { | 577 | { |
| 578 | // get partitions collection from catalog | 578 | // get partitions collection from catalog |
| 579 | hr = CpiGetPartitionsCollection(&piPartColl); | 579 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
| 580 | ExitOnFailure(hr, "Failed to get partitions collection"); | 580 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 581 | 581 | ||
| 582 | // find partition object | 582 | // find partition object |
| @@ -587,7 +587,7 @@ HRESULT CpiGetRolesCollForPartition( | |||
| 587 | ExitFunction(); // exit with hr = S_FALSE | 587 | ExitFunction(); // exit with hr = S_FALSE |
| 588 | 588 | ||
| 589 | // get roles collection | 589 | // get roles collection |
| 590 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", &pPart->piRolesColl); | 590 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", &pPart->piRolesColl); |
| 591 | ExitOnFailure(hr, "Failed to get roles collection"); | 591 | ExitOnFailure(hr, "Failed to get roles collection"); |
| 592 | } | 592 | } |
| 593 | 593 | ||
diff --git a/src/ca/cpsched.cpp b/src/ca/cpsched.cpp index ac0dda59..ebc547ae 100644 --- a/src/ca/cpsched.cpp +++ b/src/ca/cpsched.cpp | |||
| @@ -29,30 +29,6 @@ | |||
| 29 | #define CP_COMPLUSINSTALLCOMMIT L"ComPlusInstallCommit" | 29 | #define CP_COMPLUSINSTALLCOMMIT L"ComPlusInstallCommit" |
| 30 | #endif | 30 | #endif |
| 31 | 31 | ||
| 32 | |||
| 33 | /******************************************************************** | ||
| 34 | DllMain - standard entry point for all WiX CustomActions | ||
| 35 | |||
| 36 | ********************************************************************/ | ||
| 37 | extern "C" BOOL WINAPI DllMain( | ||
| 38 | IN HINSTANCE hInst, | ||
| 39 | IN ULONG ulReason, | ||
| 40 | IN LPVOID) | ||
| 41 | { | ||
| 42 | switch(ulReason) | ||
| 43 | { | ||
| 44 | case DLL_PROCESS_ATTACH: | ||
| 45 | WcaGlobalInitialize(hInst); | ||
| 46 | break; | ||
| 47 | |||
| 48 | case DLL_PROCESS_DETACH: | ||
| 49 | WcaGlobalFinalize(); | ||
| 50 | break; | ||
| 51 | } | ||
| 52 | |||
| 53 | return TRUE; | ||
| 54 | } | ||
| 55 | |||
| 56 | /******************************************************************** | 32 | /******************************************************************** |
| 57 | ConfigureComPlusInstall - CUSTOM ACTION ENTRY POINT for installing COM+ components | 33 | ConfigureComPlusInstall - CUSTOM ACTION ENTRY POINT for installing COM+ components |
| 58 | 34 | ||
| @@ -103,7 +79,7 @@ extern "C" UINT __stdcall ConfigureComPlusInstall(MSIHANDLE hInstall) | |||
| 103 | ExitOnFailure(hr, "Failed to initialize COM"); | 79 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 104 | fInitializedCom = TRUE; | 80 | fInitializedCom = TRUE; |
| 105 | 81 | ||
| 106 | CpiInitialize(); | 82 | CpiSchedInitialize(); |
| 107 | 83 | ||
| 108 | // check for the prerequsite tables | 84 | // check for the prerequsite tables |
| 109 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) | 85 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) |
| @@ -114,7 +90,7 @@ extern "C" UINT __stdcall ConfigureComPlusInstall(MSIHANDLE hInstall) | |||
| 114 | 90 | ||
| 115 | // make sure we can access the COM+ admin catalog | 91 | // make sure we can access the COM+ admin catalog |
| 116 | do { | 92 | do { |
| 117 | hr = CpiGetAdminCatalog(&piCatalog); | 93 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
| 118 | if (FAILED(hr)) | 94 | if (FAILED(hr)) |
| 119 | { | 95 | { |
| 120 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); | 96 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); |
| @@ -320,7 +296,7 @@ LExit: | |||
| 320 | CpiSubscriptionListFree(&subList); | 296 | CpiSubscriptionListFree(&subList); |
| 321 | 297 | ||
| 322 | // unitialize | 298 | // unitialize |
| 323 | CpiFinalize(); | 299 | CpiSchedFinalize(); |
| 324 | 300 | ||
| 325 | if (fInitializedCom) | 301 | if (fInitializedCom) |
| 326 | ::CoUninitialize(); | 302 | ::CoUninitialize(); |
| @@ -378,7 +354,7 @@ extern "C" UINT __stdcall ConfigureComPlusUninstall(MSIHANDLE hInstall) | |||
| 378 | ExitOnFailure(hr, "Failed to initialize COM"); | 354 | ExitOnFailure(hr, "Failed to initialize COM"); |
| 379 | fInitializedCom = TRUE; | 355 | fInitializedCom = TRUE; |
| 380 | 356 | ||
| 381 | CpiInitialize(); | 357 | CpiSchedInitialize(); |
| 382 | 358 | ||
| 383 | // check for the prerequsite tables | 359 | // check for the prerequsite tables |
| 384 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) | 360 | if (!CpiTableExists(cptComPlusPartition) && !CpiTableExists(cptComPlusApplication) && !CpiTableExists(cptComPlusAssembly)) |
| @@ -389,7 +365,7 @@ extern "C" UINT __stdcall ConfigureComPlusUninstall(MSIHANDLE hInstall) | |||
| 389 | 365 | ||
| 390 | // make sure we can access the COM+ admin catalog | 366 | // make sure we can access the COM+ admin catalog |
| 391 | do { | 367 | do { |
| 392 | hr = CpiGetAdminCatalog(&piCatalog); | 368 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
| 393 | if (FAILED(hr)) | 369 | if (FAILED(hr)) |
| 394 | { | 370 | { |
| 395 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); | 371 | WcaLog(LOGMSG_STANDARD, "Failed to get COM+ admin catalog"); |
| @@ -580,7 +556,7 @@ LExit: | |||
| 580 | CpiSubscriptionListFree(&subList); | 556 | CpiSubscriptionListFree(&subList); |
| 581 | 557 | ||
| 582 | // unitialize | 558 | // unitialize |
| 583 | CpiFinalize(); | 559 | CpiSchedFinalize(); |
| 584 | 560 | ||
| 585 | if (fInitializedCom) | 561 | if (fInitializedCom) |
| 586 | ::CoUninitialize(); | 562 | ::CoUninitialize(); |
diff --git a/src/ca/cpsubssched.cpp b/src/ca/cpsubssched.cpp index 73fd4f6d..df15fd03 100644 --- a/src/ca/cpsubssched.cpp +++ b/src/ca/cpsubssched.cpp | |||
| @@ -53,7 +53,7 @@ static HRESULT ComponentFindByKey( | |||
| 53 | CPI_ASSEMBLY_LIST* pAsmList, | 53 | CPI_ASSEMBLY_LIST* pAsmList, |
| 54 | LPCWSTR pwzKey, | 54 | LPCWSTR pwzKey, |
| 55 | CPI_ASSEMBLY** ppAsmItm, | 55 | CPI_ASSEMBLY** ppAsmItm, |
| 56 | CPI_COMPONENT** ppCompItm | 56 | CPISCHED_COMPONENT** ppCompItm |
| 57 | ); | 57 | ); |
| 58 | 58 | ||
| 59 | 59 | ||
| @@ -586,12 +586,12 @@ static HRESULT ComponentFindByKey( | |||
| 586 | CPI_ASSEMBLY_LIST* pAsmList, | 586 | CPI_ASSEMBLY_LIST* pAsmList, |
| 587 | LPCWSTR pwzKey, | 587 | LPCWSTR pwzKey, |
| 588 | CPI_ASSEMBLY** ppAsmItm, | 588 | CPI_ASSEMBLY** ppAsmItm, |
| 589 | CPI_COMPONENT** ppCompItm | 589 | CPISCHED_COMPONENT** ppCompItm |
| 590 | ) | 590 | ) |
| 591 | { | 591 | { |
| 592 | for (CPI_ASSEMBLY* pAsmItm = pAsmList->pFirst; pAsmItm; pAsmItm = pAsmItm->pNext) | 592 | for (CPI_ASSEMBLY* pAsmItm = pAsmList->pFirst; pAsmItm; pAsmItm = pAsmItm->pNext) |
| 593 | { | 593 | { |
| 594 | for (CPI_COMPONENT* pCompItm = pAsmItm->pComponents; pCompItm; pCompItm = pCompItm->pNext) | 594 | for (CPISCHED_COMPONENT* pCompItm = pAsmItm->pComponents; pCompItm; pCompItm = pCompItm->pNext) |
| 595 | { | 595 | { |
| 596 | if (0 == lstrcmpW(pCompItm->wzKey, pwzKey)) | 596 | if (0 == lstrcmpW(pCompItm->wzKey, pwzKey)) |
| 597 | { | 597 | { |
diff --git a/src/ca/cpsubssched.h b/src/ca/cpsubssched.h index 3fc18478..83ff1af8 100644 --- a/src/ca/cpsubssched.h +++ b/src/ca/cpsubssched.h | |||
| @@ -18,7 +18,7 @@ struct CPI_SUBSCRIPTION | |||
| 18 | INSTALLSTATE isInstalled, isAction; | 18 | INSTALLSTATE isInstalled, isAction; |
| 19 | 19 | ||
| 20 | CPI_ASSEMBLY* pAssembly; | 20 | CPI_ASSEMBLY* pAssembly; |
| 21 | CPI_COMPONENT* pComponent; | 21 | CPISCHED_COMPONENT* pComponent; |
| 22 | 22 | ||
| 23 | CPI_SUBSCRIPTION* pNext; | 23 | CPI_SUBSCRIPTION* pNext; |
| 24 | }; | 24 | }; |
diff --git a/src/ca/cputilexec.cpp b/src/ca/cputilexec.cpp index e081678b..1c2c8b93 100644 --- a/src/ca/cputilexec.cpp +++ b/src/ca/cputilexec.cpp | |||
| @@ -69,13 +69,13 @@ static ICOMAdminCatalog* gpiCatalog; | |||
| 69 | 69 | ||
| 70 | // function definitions | 70 | // function definitions |
| 71 | 71 | ||
| 72 | void CpiInitialize() | 72 | void CpiExecInitialize() |
| 73 | { | 73 | { |
| 74 | // collections | 74 | // collections |
| 75 | gpiCatalog = NULL; | 75 | gpiCatalog = NULL; |
| 76 | } | 76 | } |
| 77 | 77 | ||
| 78 | void CpiFinalize() | 78 | void CpiExecFinalize() |
| 79 | { | 79 | { |
| 80 | // collections | 80 | // collections |
| 81 | ReleaseObject(gpiCatalog); | 81 | ReleaseObject(gpiCatalog); |
| @@ -187,7 +187,7 @@ LExit: | |||
| 187 | return hr; | 187 | return hr; |
| 188 | } | 188 | } |
| 189 | 189 | ||
| 190 | HRESULT CpiGetAdminCatalog( | 190 | HRESULT CpiExecGetAdminCatalog( |
| 191 | ICOMAdminCatalog** ppiCatalog | 191 | ICOMAdminCatalog** ppiCatalog |
| 192 | ) | 192 | ) |
| 193 | { | 193 | { |
| @@ -225,11 +225,11 @@ HRESULT CpiLogCatalogErrorInfo() | |||
| 225 | LPWSTR pwzMinorRef = NULL; | 225 | LPWSTR pwzMinorRef = NULL; |
| 226 | 226 | ||
| 227 | // get catalog | 227 | // get catalog |
| 228 | hr = CpiGetAdminCatalog(&piCatalog); | 228 | hr = CpiExecGetAdminCatalog(&piCatalog); |
| 229 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 229 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 230 | 230 | ||
| 231 | // get error info collection | 231 | // get error info collection |
| 232 | hr = CpiGetCatalogCollection(L"ErrorInfo", &piErrColl); | 232 | hr = CpiExecGetCatalogCollection(L"ErrorInfo", &piErrColl); |
| 233 | ExitOnFailure(hr, "Failed to get error info collection"); | 233 | ExitOnFailure(hr, "Failed to get error info collection"); |
| 234 | 234 | ||
| 235 | // loop objects | 235 | // loop objects |
| @@ -282,7 +282,7 @@ LExit: | |||
| 282 | return hr; | 282 | return hr; |
| 283 | } | 283 | } |
| 284 | 284 | ||
| 285 | HRESULT CpiGetCatalogCollection( | 285 | HRESULT CpiExecGetCatalogCollection( |
| 286 | LPCWSTR pwzName, | 286 | LPCWSTR pwzName, |
| 287 | ICatalogCollection** ppiColl | 287 | ICatalogCollection** ppiColl |
| 288 | ) | 288 | ) |
| @@ -299,7 +299,7 @@ HRESULT CpiGetCatalogCollection( | |||
| 299 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 299 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
| 300 | 300 | ||
| 301 | // get catalog | 301 | // get catalog |
| 302 | hr = CpiGetAdminCatalog(&piCatalog); | 302 | hr = CpiExecGetAdminCatalog(&piCatalog); |
| 303 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 303 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 304 | 304 | ||
| 305 | // get collecton from catalog | 305 | // get collecton from catalog |
| @@ -326,7 +326,7 @@ LExit: | |||
| 326 | return hr; | 326 | return hr; |
| 327 | } | 327 | } |
| 328 | 328 | ||
| 329 | HRESULT CpiGetCatalogCollection( | 329 | HRESULT CpiExecGetCatalogCollection( |
| 330 | ICatalogCollection* piColl, | 330 | ICatalogCollection* piColl, |
| 331 | ICatalogObject* piObj, | 331 | ICatalogObject* piObj, |
| 332 | LPCWSTR pwzName, | 332 | LPCWSTR pwzName, |
| @@ -348,7 +348,7 @@ HRESULT CpiGetCatalogCollection( | |||
| 348 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 348 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
| 349 | 349 | ||
| 350 | // get catalog | 350 | // get catalog |
| 351 | hr = CpiGetAdminCatalog(&piCatalog); | 351 | hr = CpiExecGetAdminCatalog(&piCatalog); |
| 352 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 352 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 353 | 353 | ||
| 354 | // get key | 354 | // get key |
| @@ -894,14 +894,14 @@ LExit: | |||
| 894 | return hr; | 894 | return hr; |
| 895 | } | 895 | } |
| 896 | 896 | ||
| 897 | HRESULT CpiGetPartitionsCollection( | 897 | HRESULT CpiExecGetPartitionsCollection( |
| 898 | ICatalogCollection** ppiPartColl | 898 | ICatalogCollection** ppiPartColl |
| 899 | ) | 899 | ) |
| 900 | { | 900 | { |
| 901 | HRESULT hr = S_OK; | 901 | HRESULT hr = S_OK; |
| 902 | 902 | ||
| 903 | // get collection | 903 | // get collection |
| 904 | hr = CpiGetCatalogCollection(L"Partitions", ppiPartColl); | 904 | hr = CpiExecGetCatalogCollection(L"Partitions", ppiPartColl); |
| 905 | ExitOnFailure(hr, "Failed to get catalog collection"); | 905 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 906 | 906 | ||
| 907 | hr = S_OK; | 907 | hr = S_OK; |
| @@ -921,7 +921,7 @@ HRESULT CpiGetPartitionRolesCollection( | |||
| 921 | ICatalogObject* piPartObj = NULL; | 921 | ICatalogObject* piPartObj = NULL; |
| 922 | 922 | ||
| 923 | // get partitions collection | 923 | // get partitions collection |
| 924 | hr = CpiGetPartitionsCollection(&piPartColl); | 924 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
| 925 | ExitOnFailure(hr, "Failed to get partitions collection"); | 925 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 926 | 926 | ||
| 927 | if (S_FALSE == hr) | 927 | if (S_FALSE == hr) |
| @@ -935,7 +935,7 @@ HRESULT CpiGetPartitionRolesCollection( | |||
| 935 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 935 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
| 936 | 936 | ||
| 937 | // get roles collection | 937 | // get roles collection |
| 938 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", ppiRolesColl); | 938 | hr = CpiExecGetCatalogCollection(piPartColl, piPartObj, L"RolesForPartition", ppiRolesColl); |
| 939 | ExitOnFailure(hr, "Failed to get catalog collection"); | 939 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 940 | 940 | ||
| 941 | hr = S_OK; | 941 | hr = S_OK; |
| @@ -974,7 +974,7 @@ HRESULT CpiGetUsersInPartitionRoleCollection( | |||
| 974 | ExitFunction(); // user not found, exit with hr = S_FALSE | 974 | ExitFunction(); // user not found, exit with hr = S_FALSE |
| 975 | 975 | ||
| 976 | // get roles collection | 976 | // get roles collection |
| 977 | hr = CpiGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInPartitionRole", ppiUsrInRoleColl); | 977 | hr = CpiExecGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInPartitionRole", ppiUsrInRoleColl); |
| 978 | ExitOnFailure(hr, "Failed to get catalog collection"); | 978 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 979 | 979 | ||
| 980 | hr = S_OK; | 980 | hr = S_OK; |
| @@ -994,7 +994,7 @@ HRESULT CpiGetPartitionUsersCollection( | |||
| 994 | HRESULT hr = S_OK; | 994 | HRESULT hr = S_OK; |
| 995 | 995 | ||
| 996 | // get roles collection | 996 | // get roles collection |
| 997 | hr = CpiGetCatalogCollection(L"PartitionUsers", ppiUserColl); | 997 | hr = CpiExecGetCatalogCollection(L"PartitionUsers", ppiUserColl); |
| 998 | ExitOnFailure(hr, "Failed to get catalog collection"); | 998 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 999 | 999 | ||
| 1000 | hr = S_OK; | 1000 | hr = S_OK; |
| @@ -1003,7 +1003,7 @@ LExit: | |||
| 1003 | return hr; | 1003 | return hr; |
| 1004 | } | 1004 | } |
| 1005 | 1005 | ||
| 1006 | HRESULT CpiGetApplicationsCollection( | 1006 | HRESULT CpiExecGetApplicationsCollection( |
| 1007 | LPCWSTR pwzPartID, | 1007 | LPCWSTR pwzPartID, |
| 1008 | ICatalogCollection** ppiAppColl | 1008 | ICatalogCollection** ppiAppColl |
| 1009 | ) | 1009 | ) |
| @@ -1018,7 +1018,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 1018 | ICatalogObject* piPartObj = NULL; | 1018 | ICatalogObject* piPartObj = NULL; |
| 1019 | 1019 | ||
| 1020 | // get catalog | 1020 | // get catalog |
| 1021 | hr = CpiGetAdminCatalog(&piCatalog); | 1021 | hr = CpiExecGetAdminCatalog(&piCatalog); |
| 1022 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 1022 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 1023 | 1023 | ||
| 1024 | // get ICOMAdminCatalog2 interface | 1024 | // get ICOMAdminCatalog2 interface |
| @@ -1038,7 +1038,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 1038 | } | 1038 | } |
| 1039 | 1039 | ||
| 1040 | // get partitions collection | 1040 | // get partitions collection |
| 1041 | hr = CpiGetPartitionsCollection(&piPartColl); | 1041 | hr = CpiExecGetPartitionsCollection(&piPartColl); |
| 1042 | ExitOnFailure(hr, "Failed to get partitions collection"); | 1042 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 1043 | 1043 | ||
| 1044 | // find object | 1044 | // find object |
| @@ -1049,7 +1049,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 1049 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 1049 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
| 1050 | 1050 | ||
| 1051 | // get applications collection | 1051 | // get applications collection |
| 1052 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", ppiAppColl); | 1052 | hr = CpiExecGetCatalogCollection(piPartColl, piPartObj, L"Applications", ppiAppColl); |
| 1053 | ExitOnFailure(hr, "Failed to get catalog collection for partition"); | 1053 | ExitOnFailure(hr, "Failed to get catalog collection for partition"); |
| 1054 | } | 1054 | } |
| 1055 | 1055 | ||
| @@ -1061,7 +1061,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 1061 | ExitOnFailure(hr = E_FAIL, "Partitions are not supported by this version of COM+"); | 1061 | ExitOnFailure(hr = E_FAIL, "Partitions are not supported by this version of COM+"); |
| 1062 | 1062 | ||
| 1063 | // get applications collection | 1063 | // get applications collection |
| 1064 | hr = CpiGetCatalogCollection(L"Applications", ppiAppColl); | 1064 | hr = CpiExecGetCatalogCollection(L"Applications", ppiAppColl); |
| 1065 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1065 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1066 | } | 1066 | } |
| 1067 | 1067 | ||
| @@ -1091,7 +1091,7 @@ HRESULT CpiGetRolesCollection( | |||
| 1091 | ICatalogObject* piAppObj = NULL; | 1091 | ICatalogObject* piAppObj = NULL; |
| 1092 | 1092 | ||
| 1093 | // get applications collection | 1093 | // get applications collection |
| 1094 | hr = CpiGetApplicationsCollection(pwzPartID, &piAppColl); | 1094 | hr = CpiExecGetApplicationsCollection(pwzPartID, &piAppColl); |
| 1095 | ExitOnFailure(hr, "Failed to get applications collection"); | 1095 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 1096 | 1096 | ||
| 1097 | if (S_FALSE == hr) | 1097 | if (S_FALSE == hr) |
| @@ -1105,7 +1105,7 @@ HRESULT CpiGetRolesCollection( | |||
| 1105 | ExitFunction(); // application not found, exit with hr = S_FALSE | 1105 | ExitFunction(); // application not found, exit with hr = S_FALSE |
| 1106 | 1106 | ||
| 1107 | // get roles collection | 1107 | // get roles collection |
| 1108 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Roles", ppiRolesColl); | 1108 | hr = CpiExecGetCatalogCollection(piAppColl, piAppObj, L"Roles", ppiRolesColl); |
| 1109 | ExitOnFailure(hr, "Failed to catalog collection"); | 1109 | ExitOnFailure(hr, "Failed to catalog collection"); |
| 1110 | 1110 | ||
| 1111 | hr = S_OK; | 1111 | hr = S_OK; |
| @@ -1145,7 +1145,7 @@ HRESULT CpiGetUsersInRoleCollection( | |||
| 1145 | ExitFunction(); // role not found, exit with hr = S_FALSE | 1145 | ExitFunction(); // role not found, exit with hr = S_FALSE |
| 1146 | 1146 | ||
| 1147 | // get roles collection | 1147 | // get roles collection |
| 1148 | hr = CpiGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInRole", ppiUsrInRoleColl); | 1148 | hr = CpiExecGetCatalogCollection(piRoleColl, piRoleObj, L"UsersInRole", ppiUsrInRoleColl); |
| 1149 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1149 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1150 | 1150 | ||
| 1151 | hr = S_OK; | 1151 | hr = S_OK; |
| @@ -1170,7 +1170,7 @@ HRESULT CpiGetComponentsCollection( | |||
| 1170 | ICatalogObject* piAppObj = NULL; | 1170 | ICatalogObject* piAppObj = NULL; |
| 1171 | 1171 | ||
| 1172 | // get applications collection | 1172 | // get applications collection |
| 1173 | hr = CpiGetApplicationsCollection(pwzPartID, &piAppColl); | 1173 | hr = CpiExecGetApplicationsCollection(pwzPartID, &piAppColl); |
| 1174 | ExitOnFailure(hr, "Failed to get applications collection"); | 1174 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 1175 | 1175 | ||
| 1176 | if (S_FALSE == hr) | 1176 | if (S_FALSE == hr) |
| @@ -1184,7 +1184,7 @@ HRESULT CpiGetComponentsCollection( | |||
| 1184 | ExitFunction(); // application not found, exit with hr = S_FALSE | 1184 | ExitFunction(); // application not found, exit with hr = S_FALSE |
| 1185 | 1185 | ||
| 1186 | // get components collection | 1186 | // get components collection |
| 1187 | hr = CpiGetCatalogCollection(piAppColl, piAppObj, L"Components", ppiCompsColl); | 1187 | hr = CpiExecGetCatalogCollection(piAppColl, piAppObj, L"Components", ppiCompsColl); |
| 1188 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1188 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1189 | 1189 | ||
| 1190 | hr = S_OK; | 1190 | hr = S_OK; |
| @@ -1206,7 +1206,7 @@ HRESULT CpiGetInterfacesCollection( | |||
| 1206 | HRESULT hr = S_OK; | 1206 | HRESULT hr = S_OK; |
| 1207 | 1207 | ||
| 1208 | // get interfaces collection | 1208 | // get interfaces collection |
| 1209 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"InterfacesForComponent", ppiIntfColl); | 1209 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, L"InterfacesForComponent", ppiIntfColl); |
| 1210 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1210 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1211 | 1211 | ||
| 1212 | hr = S_OK; | 1212 | hr = S_OK; |
| @@ -1224,7 +1224,7 @@ HRESULT CpiGetMethodsCollection( | |||
| 1224 | HRESULT hr = S_OK; | 1224 | HRESULT hr = S_OK; |
| 1225 | 1225 | ||
| 1226 | // get interfaces collection | 1226 | // get interfaces collection |
| 1227 | hr = CpiGetCatalogCollection(piIntfColl, piIntfObj, L"MethodsForInterface", ppiMethColl); | 1227 | hr = CpiExecGetCatalogCollection(piIntfColl, piIntfObj, L"MethodsForInterface", ppiMethColl); |
| 1228 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1228 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1229 | 1229 | ||
| 1230 | hr = S_OK; | 1230 | hr = S_OK; |
| @@ -1260,7 +1260,7 @@ HRESULT CpiGetSubscriptionsCollection( | |||
| 1260 | ExitFunction(); // component not found, exit with hr = S_FALSE | 1260 | ExitFunction(); // component not found, exit with hr = S_FALSE |
| 1261 | 1261 | ||
| 1262 | // get subscriptions collection | 1262 | // get subscriptions collection |
| 1263 | hr = CpiGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", ppiSubsColl); | 1263 | hr = CpiExecGetCatalogCollection(piCompColl, piCompObj, L"SubscriptionsForComponent", ppiSubsColl); |
| 1264 | ExitOnFailure(hr, "Failed to get catalog collection"); | 1264 | ExitOnFailure(hr, "Failed to get catalog collection"); |
| 1265 | 1265 | ||
| 1266 | hr = S_OK; | 1266 | hr = S_OK; |
diff --git a/src/ca/cputilexec.h b/src/ca/cputilexec.h index 51b47583..b900883d 100644 --- a/src/ca/cputilexec.h +++ b/src/ca/cputilexec.h | |||
| @@ -28,8 +28,8 @@ struct CPI_ROLLBACK_DATA | |||
| 28 | 28 | ||
| 29 | // function prototypes | 29 | // function prototypes |
| 30 | 30 | ||
| 31 | void CpiInitialize(); | 31 | void CpiExecInitialize(); |
| 32 | void CpiFinalize(); | 32 | void CpiExecFinalize(); |
| 33 | HRESULT CpiActionStartMessage( | 33 | HRESULT CpiActionStartMessage( |
| 34 | LPWSTR* ppwzActionData, | 34 | LPWSTR* ppwzActionData, |
| 35 | BOOL fSuppress | 35 | BOOL fSuppress |
| @@ -38,15 +38,15 @@ HRESULT CpiActionDataMessage( | |||
| 38 | DWORD cArgs, | 38 | DWORD cArgs, |
| 39 | ... | 39 | ... |
| 40 | ); | 40 | ); |
| 41 | HRESULT CpiGetAdminCatalog( | 41 | HRESULT CpiExecGetAdminCatalog( |
| 42 | ICOMAdminCatalog** ppiCatalog | 42 | ICOMAdminCatalog** ppiCatalog |
| 43 | ); | 43 | ); |
| 44 | HRESULT CpiLogCatalogErrorInfo(); | 44 | HRESULT CpiLogCatalogErrorInfo(); |
| 45 | HRESULT CpiGetCatalogCollection( | 45 | HRESULT CpiExecGetCatalogCollection( |
| 46 | LPCWSTR pwzName, | 46 | LPCWSTR pwzName, |
| 47 | ICatalogCollection** ppiColl | 47 | ICatalogCollection** ppiColl |
| 48 | ); | 48 | ); |
| 49 | HRESULT CpiGetCatalogCollection( | 49 | HRESULT CpiExecGetCatalogCollection( |
| 50 | ICatalogCollection* piColl, | 50 | ICatalogCollection* piColl, |
| 51 | ICatalogObject* piObj, | 51 | ICatalogObject* piObj, |
| 52 | LPCWSTR pwzName, | 52 | LPCWSTR pwzName, |
| @@ -105,7 +105,7 @@ HRESULT CpiFindUserCollectionObject( | |||
| 105 | PSID pSid, | 105 | PSID pSid, |
| 106 | ICatalogObject** ppiObj | 106 | ICatalogObject** ppiObj |
| 107 | ); | 107 | ); |
| 108 | HRESULT CpiGetPartitionsCollection( | 108 | HRESULT CpiExecGetPartitionsCollection( |
| 109 | ICatalogCollection** ppiPartColl | 109 | ICatalogCollection** ppiPartColl |
| 110 | ); | 110 | ); |
| 111 | HRESULT CpiGetPartitionRolesCollection( | 111 | HRESULT CpiGetPartitionRolesCollection( |
| @@ -120,7 +120,7 @@ HRESULT CpiGetUsersInPartitionRoleCollection( | |||
| 120 | HRESULT CpiGetPartitionUsersCollection( | 120 | HRESULT CpiGetPartitionUsersCollection( |
| 121 | ICatalogCollection** ppiUserColl | 121 | ICatalogCollection** ppiUserColl |
| 122 | ); | 122 | ); |
| 123 | HRESULT CpiGetApplicationsCollection( | 123 | HRESULT CpiExecGetApplicationsCollection( |
| 124 | LPCWSTR pwzPartID, | 124 | LPCWSTR pwzPartID, |
| 125 | ICatalogCollection** ppiAppColl | 125 | ICatalogCollection** ppiAppColl |
| 126 | ); | 126 | ); |
diff --git a/src/ca/cputilsched.cpp b/src/ca/cputilsched.cpp index 9dbe21ec..1a958c56 100644 --- a/src/ca/cputilsched.cpp +++ b/src/ca/cputilsched.cpp | |||
| @@ -43,7 +43,7 @@ static int giTables; | |||
| 43 | 43 | ||
| 44 | // function definitions | 44 | // function definitions |
| 45 | 45 | ||
| 46 | void CpiInitialize() | 46 | void CpiSchedInitialize() |
| 47 | { | 47 | { |
| 48 | // collections | 48 | // collections |
| 49 | gpiCatalog = NULL; | 49 | gpiCatalog = NULL; |
| @@ -80,7 +80,7 @@ void CpiInitialize() | |||
| 80 | if (S_OK == WcaTableExists(L"ComPlusSubscriptionProperty")) giTables |= cptComPlusSubscriptionProperty; | 80 | if (S_OK == WcaTableExists(L"ComPlusSubscriptionProperty")) giTables |= cptComPlusSubscriptionProperty; |
| 81 | } | 81 | } |
| 82 | 82 | ||
| 83 | void CpiFinalize() | 83 | void CpiSchedFinalize() |
| 84 | { | 84 | { |
| 85 | // collections | 85 | // collections |
| 86 | ReleaseObject(gpiCatalog); | 86 | ReleaseObject(gpiCatalog); |
| @@ -95,7 +95,7 @@ BOOL CpiTableExists( | |||
| 95 | return (giTables & iTable) == iTable; | 95 | return (giTables & iTable) == iTable; |
| 96 | } | 96 | } |
| 97 | 97 | ||
| 98 | HRESULT CpiGetAdminCatalog( | 98 | HRESULT CpiSchedGetAdminCatalog( |
| 99 | ICOMAdminCatalog** ppiCatalog | 99 | ICOMAdminCatalog** ppiCatalog |
| 100 | ) | 100 | ) |
| 101 | { | 101 | { |
| @@ -118,7 +118,7 @@ LExit: | |||
| 118 | return hr; | 118 | return hr; |
| 119 | } | 119 | } |
| 120 | 120 | ||
| 121 | HRESULT CpiGetCatalogCollection( | 121 | HRESULT CpiSchedGetCatalogCollection( |
| 122 | LPCWSTR pwzName, | 122 | LPCWSTR pwzName, |
| 123 | ICatalogCollection** ppiColl | 123 | ICatalogCollection** ppiColl |
| 124 | ) | 124 | ) |
| @@ -134,7 +134,7 @@ HRESULT CpiGetCatalogCollection( | |||
| 134 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 134 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
| 135 | 135 | ||
| 136 | // get catalog | 136 | // get catalog |
| 137 | hr = CpiGetAdminCatalog(&piCatalog); | 137 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
| 138 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 138 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 139 | 139 | ||
| 140 | // get collecton from catalog | 140 | // get collecton from catalog |
| @@ -159,7 +159,7 @@ LExit: | |||
| 159 | return hr; | 159 | return hr; |
| 160 | } | 160 | } |
| 161 | 161 | ||
| 162 | HRESULT CpiGetCatalogCollection( | 162 | HRESULT CpiSchedGetCatalogCollection( |
| 163 | ICatalogCollection* piColl, | 163 | ICatalogCollection* piColl, |
| 164 | ICatalogObject* piObj, | 164 | ICatalogObject* piObj, |
| 165 | LPCWSTR pwzName, | 165 | LPCWSTR pwzName, |
| @@ -180,7 +180,7 @@ HRESULT CpiGetCatalogCollection( | |||
| 180 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); | 180 | ExitOnNull(bstrName, hr, E_OUTOFMEMORY, "Failed to allocate BSTR for collection name"); |
| 181 | 181 | ||
| 182 | // get catalog | 182 | // get catalog |
| 183 | hr = CpiGetAdminCatalog(&piCatalog); | 183 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
| 184 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 184 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 185 | 185 | ||
| 186 | // get key | 186 | // get key |
| @@ -331,7 +331,7 @@ LExit: | |||
| 331 | return hr; | 331 | return hr; |
| 332 | } | 332 | } |
| 333 | 333 | ||
| 334 | HRESULT CpiGetPartitionsCollection( | 334 | HRESULT CpiSchedGetPartitionsCollection( |
| 335 | ICatalogCollection** ppiPartColl | 335 | ICatalogCollection** ppiPartColl |
| 336 | ) | 336 | ) |
| 337 | { | 337 | { |
| @@ -340,7 +340,7 @@ HRESULT CpiGetPartitionsCollection( | |||
| 340 | if (!gpiPartColl) | 340 | if (!gpiPartColl) |
| 341 | { | 341 | { |
| 342 | // get collection | 342 | // get collection |
| 343 | hr = CpiGetCatalogCollection(L"Partitions", &gpiPartColl); | 343 | hr = CpiSchedGetCatalogCollection(L"Partitions", &gpiPartColl); |
| 344 | ExitOnFailure(hr, "Failed to get partitions collection"); | 344 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 345 | } | 345 | } |
| 346 | 346 | ||
| @@ -354,7 +354,7 @@ LExit: | |||
| 354 | return hr; | 354 | return hr; |
| 355 | } | 355 | } |
| 356 | 356 | ||
| 357 | HRESULT CpiGetApplicationsCollection( | 357 | HRESULT CpiSchedGetApplicationsCollection( |
| 358 | ICatalogCollection** ppiAppColl | 358 | ICatalogCollection** ppiAppColl |
| 359 | ) | 359 | ) |
| 360 | { | 360 | { |
| @@ -369,7 +369,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 369 | if (!gpiAppColl) | 369 | if (!gpiAppColl) |
| 370 | { | 370 | { |
| 371 | // get catalog | 371 | // get catalog |
| 372 | hr = CpiGetAdminCatalog(&piCatalog); | 372 | hr = CpiSchedGetAdminCatalog(&piCatalog); |
| 373 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); | 373 | ExitOnFailure(hr, "Failed to get COM+ admin catalog"); |
| 374 | 374 | ||
| 375 | // get ICOMAdminCatalog2 interface | 375 | // get ICOMAdminCatalog2 interface |
| @@ -385,7 +385,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 385 | ExitOnFailure(hr, "Failed to get global partition id"); | 385 | ExitOnFailure(hr, "Failed to get global partition id"); |
| 386 | 386 | ||
| 387 | // get partitions collection | 387 | // get partitions collection |
| 388 | hr = CpiGetPartitionsCollection(&piPartColl); | 388 | hr = CpiSchedGetPartitionsCollection(&piPartColl); |
| 389 | ExitOnFailure(hr, "Failed to get partitions collection"); | 389 | ExitOnFailure(hr, "Failed to get partitions collection"); |
| 390 | 390 | ||
| 391 | // find object | 391 | // find object |
| @@ -396,7 +396,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 396 | ExitFunction(); // partition not found, exit with hr = S_FALSE | 396 | ExitFunction(); // partition not found, exit with hr = S_FALSE |
| 397 | 397 | ||
| 398 | // get applications collection | 398 | // get applications collection |
| 399 | hr = CpiGetCatalogCollection(piPartColl, piPartObj, L"Applications", &gpiAppColl); | 399 | hr = CpiSchedGetCatalogCollection(piPartColl, piPartObj, L"Applications", &gpiAppColl); |
| 400 | ExitOnFailure(hr, "Failed to get applications collection"); | 400 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 401 | } | 401 | } |
| 402 | 402 | ||
| @@ -404,7 +404,7 @@ HRESULT CpiGetApplicationsCollection( | |||
| 404 | else | 404 | else |
| 405 | { | 405 | { |
| 406 | // get applications collection | 406 | // get applications collection |
| 407 | hr = CpiGetCatalogCollection(L"Applications", &gpiAppColl); | 407 | hr = CpiSchedGetCatalogCollection(L"Applications", &gpiAppColl); |
| 408 | ExitOnFailure(hr, "Failed to get applications collection"); | 408 | ExitOnFailure(hr, "Failed to get applications collection"); |
| 409 | } | 409 | } |
| 410 | } | 410 | } |
diff --git a/src/ca/cputilsched.h b/src/ca/cputilsched.h index 61aaab84..1f315576 100644 --- a/src/ca/cputilsched.h +++ b/src/ca/cputilsched.h | |||
| @@ -2,12 +2,8 @@ | |||
| 2 | // 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 | // 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. |
| 3 | 3 | ||
| 4 | 4 | ||
| 5 | #define CPI_MAX_GUID 38 | ||
| 6 | |||
| 7 | enum eRunMode { rmDeferred = 1, rmCommit, rmRollback }; | 5 | enum eRunMode { rmDeferred = 1, rmCommit, rmRollback }; |
| 8 | 6 | ||
| 9 | enum eActionType { atNoOp = 0, atCreate, atRemove }; | ||
| 10 | |||
| 11 | enum eComPlusPropertyType { cpptNone = 0, cpptBoolean, cpptInteger, cpptString, cpptUser }; | 7 | enum eComPlusPropertyType { cpptNone = 0, cpptBoolean, cpptInteger, cpptString, cpptUser }; |
| 12 | 8 | ||
| 13 | enum eComPlusTables | 9 | enum eComPlusTables |
| @@ -42,14 +38,6 @@ enum eComPlusTables | |||
| 42 | 38 | ||
| 43 | // structs | 39 | // structs |
| 44 | 40 | ||
| 45 | struct CPI_PROPERTY | ||
| 46 | { | ||
| 47 | WCHAR wzName[MAX_DARWIN_KEY + 1]; | ||
| 48 | LPWSTR pwzValue; | ||
| 49 | |||
| 50 | CPI_PROPERTY* pNext; | ||
| 51 | }; | ||
| 52 | |||
| 53 | struct CPI_PROPERTY_DEFINITION | 41 | struct CPI_PROPERTY_DEFINITION |
| 54 | { | 42 | { |
| 55 | LPCWSTR pwzName; | 43 | LPCWSTR pwzName; |
| @@ -60,19 +48,19 @@ struct CPI_PROPERTY_DEFINITION | |||
| 60 | 48 | ||
| 61 | // function prototypes | 49 | // function prototypes |
| 62 | 50 | ||
| 63 | void CpiInitialize(); | 51 | void CpiSchedInitialize(); |
| 64 | void CpiFinalize(); | 52 | void CpiSchedFinalize(); |
| 65 | BOOL CpiTableExists( | 53 | BOOL CpiTableExists( |
| 66 | int iTable | 54 | int iTable |
| 67 | ); | 55 | ); |
| 68 | HRESULT CpiGetAdminCatalog( | 56 | HRESULT CpiSchedGetAdminCatalog( |
| 69 | ICOMAdminCatalog** ppiCatalog | 57 | ICOMAdminCatalog** ppiCatalog |
| 70 | ); | 58 | ); |
| 71 | HRESULT CpiGetCatalogCollection( | 59 | HRESULT CpiSchedGetCatalogCollection( |
| 72 | LPCWSTR pwzName, | 60 | LPCWSTR pwzName, |
| 73 | ICatalogCollection** ppiColl | 61 | ICatalogCollection** ppiColl |
| 74 | ); | 62 | ); |
| 75 | HRESULT CpiGetCatalogCollection( | 63 | HRESULT CpiSchedGetCatalogCollection( |
| 76 | ICatalogCollection* piColl, | 64 | ICatalogCollection* piColl, |
| 77 | ICatalogObject* piObj, | 65 | ICatalogObject* piObj, |
| 78 | LPCWSTR pwzName, | 66 | LPCWSTR pwzName, |
| @@ -89,10 +77,10 @@ HRESULT CpiFindCollectionObject( | |||
| 89 | LPCWSTR pwzName, | 77 | LPCWSTR pwzName, |
| 90 | ICatalogObject** ppiObj | 78 | ICatalogObject** ppiObj |
| 91 | ); | 79 | ); |
| 92 | HRESULT CpiGetPartitionsCollection( | 80 | HRESULT CpiSchedGetPartitionsCollection( |
| 93 | ICatalogCollection** ppiPartColl | 81 | ICatalogCollection** ppiPartColl |
| 94 | ); | 82 | ); |
| 95 | HRESULT CpiGetApplicationsCollection( | 83 | HRESULT CpiSchedGetApplicationsCollection( |
| 96 | ICatalogCollection** ppiAppColl | 84 | ICatalogCollection** ppiAppColl |
| 97 | ); | 85 | ); |
| 98 | HRESULT CpiAddActionTextToActionData( | 86 | HRESULT CpiAddActionTextToActionData( |
diff --git a/src/ca/custommsierrors.h b/src/ca/custommsierrors.h new file mode 100644 index 00000000..219df698 --- /dev/null +++ b/src/ca/custommsierrors.h | |||
| @@ -0,0 +1,29 @@ | |||
| 1 | #pragma once | ||
| 2 | // 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. | ||
| 3 | |||
| 4 | |||
| 5 | #define msierrComPlusCannotConnect 28001 | ||
| 6 | #define msierrComPlusPartitionReadFailed 28002 | ||
| 7 | #define msierrComPlusPartitionRoleReadFailed 28003 | ||
| 8 | #define msierrComPlusUserInPartitionRoleReadFailed 28004 | ||
| 9 | #define msierrComPlusPartitionUserReadFailed 28005 | ||
| 10 | #define msierrComPlusApplicationReadFailed 28006 | ||
| 11 | #define msierrComPlusApplicationRoleReadFailed 28007 | ||
| 12 | #define msierrComPlusUserInApplicationRoleReadFailed 28008 | ||
| 13 | #define msierrComPlusAssembliesReadFailed 28009 | ||
| 14 | #define msierrComPlusSubscriptionReadFailed 28010 | ||
| 15 | #define msierrComPlusPartitionDependency 28011 | ||
| 16 | #define msierrComPlusPartitionNotFound 28012 | ||
| 17 | #define msierrComPlusPartitionIdConflict 28013 | ||
| 18 | #define msierrComPlusPartitionNameConflict 28014 | ||
| 19 | #define msierrComPlusApplicationDependency 28015 | ||
| 20 | #define msierrComPlusApplicationNotFound 28016 | ||
| 21 | #define msierrComPlusApplicationIdConflict 28017 | ||
| 22 | #define msierrComPlusApplicationNameConflict 28018 | ||
| 23 | #define msierrComPlusApplicationRoleDependency 28019 | ||
| 24 | #define msierrComPlusApplicationRoleNotFound 28020 | ||
| 25 | #define msierrComPlusApplicationRoleConflict 28021 | ||
| 26 | #define msierrComPlusAssemblyDependency 28022 | ||
| 27 | #define msierrComPlusSubscriptionIdConflict 28023 | ||
| 28 | #define msierrComPlusSubscriptionNameConflict 28024 | ||
| 29 | #define msierrComPlusFailedLookupNames 28025 | ||
diff --git a/src/ca/dllmain.cpp b/src/ca/dllmain.cpp new file mode 100644 index 00000000..7d299feb --- /dev/null +++ b/src/ca/dllmain.cpp | |||
| @@ -0,0 +1,27 @@ | |||
| 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 | #include "precomp.h" | ||
| 4 | |||
| 5 | /******************************************************************** | ||
| 6 | DllMain - standard entry point for all WiX custom actions. | ||
| 7 | |||
| 8 | ********************************************************************/ | ||
| 9 | extern "C" BOOL WINAPI DllMain( | ||
| 10 | IN HINSTANCE hInstance, | ||
| 11 | IN ULONG ulReason, | ||
| 12 | IN LPVOID) | ||
| 13 | { | ||
| 14 | switch(ulReason) | ||
| 15 | { | ||
| 16 | case DLL_PROCESS_ATTACH: | ||
| 17 | WcaGlobalInitialize(hInstance); | ||
| 18 | ::DisableThreadLibraryCalls(hInstance); | ||
| 19 | break; | ||
| 20 | |||
| 21 | case DLL_PROCESS_DETACH: | ||
| 22 | WcaGlobalFinalize(); | ||
| 23 | break; | ||
| 24 | } | ||
| 25 | |||
| 26 | return TRUE; | ||
| 27 | } | ||
diff --git a/src/ca/packages.config b/src/ca/packages.config new file mode 100644 index 00000000..ab964d2c --- /dev/null +++ b/src/ca/packages.config | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <packages> | ||
| 3 | <package id="WixToolset.DUtil" version="4.0.16" targetFramework="native" /> | ||
| 4 | <package id="WixToolset.WcaUtil" version="4.0.2" targetFramework="native" /> | ||
| 5 | </packages> \ No newline at end of file | ||
diff --git a/src/ca/precomp.h b/src/ca/precomp.h new file mode 100644 index 00000000..74c328d2 --- /dev/null +++ b/src/ca/precomp.h | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | #pragma once | ||
| 2 | // 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. | ||
| 3 | |||
| 4 | |||
| 5 | #include <windows.h> | ||
| 6 | #include <msiquery.h> | ||
| 7 | #include <strsafe.h> | ||
| 8 | #include <comadmin.h> | ||
| 9 | #include <ntsecapi.h> | ||
| 10 | #include <aclapi.h> | ||
| 11 | |||
| 12 | #include "wcautil.h" | ||
| 13 | #include "memutil.h" | ||
| 14 | #include "strutil.h" | ||
| 15 | #include "wiutil.h" | ||
| 16 | |||
| 17 | #include "CustomMsiErrors.h" | ||
| 18 | |||
| 19 | #include "cpcost.h" | ||
| 20 | #include "cputilexec.h" | ||
| 21 | #include "cppartexec.h" | ||
| 22 | #include "cppartroleexec.h" | ||
| 23 | #include "cpappexec.h" | ||
| 24 | #include "cpapproleexec.h" | ||
| 25 | #include "cpasmexec.h" | ||
| 26 | #include "cpsubsexec.h" | ||
| 27 | #include "cputilsched.h" | ||
| 28 | #include "cppartsched.h" | ||
| 29 | #include "cppartrolesched.h" | ||
| 30 | #include "cpappsched.h" | ||
| 31 | #include "cpapprolesched.h" | ||
| 32 | #include "cpasmsched.h" | ||
| 33 | #include "cpsubssched.h" | ||
diff --git a/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs b/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs new file mode 100644 index 00000000..4ff3b5f0 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/ComPlusExtensionFixture.cs | |||
| @@ -0,0 +1,32 @@ | |||
| 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 WixToolsetTest.ComPlus | ||
| 4 | { | ||
| 5 | using System.Linq; | ||
| 6 | using WixBuildTools.TestSupport; | ||
| 7 | using WixToolset.Core.TestPackage; | ||
| 8 | using WixToolset.ComPlus; | ||
| 9 | using Xunit; | ||
| 10 | |||
| 11 | public class ComPlusExtensionFixture | ||
| 12 | { | ||
| 13 | [Fact] | ||
| 14 | public void CanBuildUsingComPlusPartition() | ||
| 15 | { | ||
| 16 | var folder = TestData.Get(@"TestData\UsingComPlusPartition"); | ||
| 17 | var build = new Builder(folder, typeof(ComPlusExtensionFactory), new[] { folder }); | ||
| 18 | |||
| 19 | var results = build.BuildAndQuery(Build, "ComPlusPartition"); | ||
| 20 | Assert.Equal(new[] | ||
| 21 | { | ||
| 22 | "ComPlusPartition:", | ||
| 23 | }, results.OrderBy(s => s).ToArray()); | ||
| 24 | } | ||
| 25 | |||
| 26 | private static void Build(string[] args) | ||
| 27 | { | ||
| 28 | var result = WixRunner.Execute(args) | ||
| 29 | .AssertSuccess(); | ||
| 30 | } | ||
| 31 | } | ||
| 32 | } | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl new file mode 100644 index 00000000..38c12ac1 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.en-us.wxl | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | |||
| 3 | <!-- | ||
| 4 | This file contains the declaration of all the localizable strings. | ||
| 5 | --> | ||
| 6 | <WixLocalization xmlns="http://wixtoolset.org/schemas/v4/wxl" Culture="en-US"> | ||
| 7 | |||
| 8 | <String Id="DowngradeError">A newer version of [ProductName] is already installed.</String> | ||
| 9 | <String Id="FeatureTitle">MsiPackage</String> | ||
| 10 | |||
| 11 | </WixLocalization> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs new file mode 100644 index 00000000..68ff98fd --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/Package.wxs | |||
| @@ -0,0 +1,22 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs"> | ||
| 3 | <Product Id="*" Name="MsiPackage" Language="1033" Version="1.0.0.0" Manufacturer="Example Corporation" UpgradeCode="047730a5-30fe-4a62-a520-da9381b8226a"> | ||
| 4 | <Package InstallerVersion="200" Compressed="no" InstallScope="perMachine" /> | ||
| 5 | |||
| 6 | <MajorUpgrade DowngradeErrorMessage="!(loc.DowngradeError)" /> | ||
| 7 | <MediaTemplate /> | ||
| 8 | |||
| 9 | <Feature Id="ProductFeature" Title="!(loc.FeatureTitle)"> | ||
| 10 | <ComponentGroupRef Id="ProductComponents" /> | ||
| 11 | </Feature> | ||
| 12 | |||
| 13 | </Product> | ||
| 14 | |||
| 15 | <Fragment> | ||
| 16 | <Directory Id="TARGETDIR" Name="SourceDir"> | ||
| 17 | <Directory Id="ProgramFilesFolder"> | ||
| 18 | <Directory Id="INSTALLFOLDER" Name="MsiPackage" /> | ||
| 19 | </Directory> | ||
| 20 | </Directory> | ||
| 21 | </Fragment> | ||
| 22 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs new file mode 100644 index 00000000..f61eedd6 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/PackageComponents.wxs | |||
| @@ -0,0 +1,12 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <Wix xmlns="http://wixtoolset.org/schemas/v4/wxs" | ||
| 3 | xmlns:complus="http://wixtoolset.org/schemas/v4/wxs/complus"> | ||
| 4 | <Fragment> | ||
| 5 | <ComponentGroup Id="ProductComponents" Directory="INSTALLFOLDER"> | ||
| 6 | <Component> | ||
| 7 | <File Source="example.txt" /> | ||
| 8 | <complus:ComPlusPartition Id="MyPartition" Name="MyPartition" PartitionId="MyPartitionId" /> | ||
| 9 | </Component> | ||
| 10 | </ComponentGroup> | ||
| 11 | </Fragment> | ||
| 12 | </Wix> | ||
diff --git a/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt new file mode 100644 index 00000000..1b4ffe8a --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/TestData/UsingComPlusPartition/example.txt | |||
| @@ -0,0 +1 @@ | |||
| This is example.txt. \ No newline at end of file | |||
diff --git a/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj b/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj new file mode 100644 index 00000000..801f5ca2 --- /dev/null +++ b/src/test/WixToolsetTest.ComPlus/WixToolsetTest.ComPlus.csproj | |||
| @@ -0,0 +1,38 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project Sdk="Microsoft.NET.Sdk"> | ||
| 5 | <PropertyGroup> | ||
| 6 | <TargetFramework>netcoreapp2.1</TargetFramework> | ||
| 7 | <IsPackable>false</IsPackable> | ||
| 8 | </PropertyGroup> | ||
| 9 | |||
| 10 | <PropertyGroup> | ||
| 11 | <NoWarn>NU1701</NoWarn> | ||
| 12 | </PropertyGroup> | ||
| 13 | |||
| 14 | <ItemGroup> | ||
| 15 | <Content Include="TestData\UsingComPlusPartition\example.txt" CopyToOutputDirectory="PreserveNewest" /> | ||
| 16 | <Content Include="TestData\UsingComPlusPartition\Package.en-us.wxl" CopyToOutputDirectory="PreserveNewest" /> | ||
| 17 | <Content Include="TestData\UsingComPlusPartition\Package.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
| 18 | <Content Include="TestData\UsingComPlusPartition\PackageComponents.wxs" CopyToOutputDirectory="PreserveNewest" /> | ||
| 19 | </ItemGroup> | ||
| 20 | |||
| 21 | <ItemGroup> | ||
| 22 | <ProjectReference Include="..\..\wixext\WixToolset.ComPlus.wixext.csproj" /> | ||
| 23 | </ItemGroup> | ||
| 24 | |||
| 25 | <ItemGroup> | ||
| 26 | <PackageReference Include="WixToolset.Core.TestPackage" Version="4.0.*" PrivateAssets="all" /> | ||
| 27 | </ItemGroup> | ||
| 28 | |||
| 29 | <ItemGroup> | ||
| 30 | <PackageReference Include="WixBuildTools.TestSupport" Version="4.0.*" /> | ||
| 31 | </ItemGroup> | ||
| 32 | |||
| 33 | <ItemGroup> | ||
| 34 | <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.8.0" /> | ||
| 35 | <PackageReference Include="xunit" Version="2.4.0" /> | ||
| 36 | <PackageReference Include="xunit.runner.visualstudio" Version="2.4.0" /> | ||
| 37 | </ItemGroup> | ||
| 38 | </Project> | ||
diff --git a/src/wixext/ComPlusCompiler.cs b/src/wixext/ComPlusCompiler.cs index 7f22c56b..4709eba9 100644 --- a/src/wixext/ComPlusCompiler.cs +++ b/src/wixext/ComPlusCompiler.cs | |||
| @@ -1,32 +1,23 @@ | |||
| 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. | 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 | 2 | ||
| 3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
| 4 | { | 4 | { |
| 5 | using System; | 5 | using System; |
| 6 | using System.Collections; | 6 | using System.Collections; |
| 7 | using System.Collections.Generic; | 7 | using System.Collections.Generic; |
| 8 | using System.Globalization; | 8 | using System.Globalization; |
| 9 | using System.Reflection; | 9 | using System.Text; |
| 10 | using System.Xml; | ||
| 11 | using System.Xml.Linq; | 10 | using System.Xml.Linq; |
| 12 | using System.Xml.Schema; | ||
| 13 | using WixToolset.Data; | 11 | using WixToolset.Data; |
| 14 | using WixToolset.Extensibility; | 12 | using WixToolset.Extensibility; |
| 13 | using WixToolset.Extensibility.Data; | ||
| 15 | 14 | ||
| 16 | /// <summary> | 15 | /// <summary> |
| 17 | /// The compiler for the WiX Toolset Internet Information Services Extension. | 16 | /// The compiler for the WiX Toolset COM+ Extension. |
| 18 | /// </summary> | 17 | /// </summary> |
| 19 | public sealed class ComPlusCompiler : CompilerExtension | 18 | public sealed class ComPlusCompiler : BaseCompilerExtension |
| 20 | { | 19 | { |
| 21 | /// <summary> | 20 | /// <summary> |
| 22 | /// Instantiate a new ComPlusCompiler. | ||
| 23 | /// </summary> | ||
| 24 | public ComPlusCompiler() | ||
| 25 | { | ||
| 26 | this.Namespace = "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
| 27 | } | ||
| 28 | |||
| 29 | /// <summary> | ||
| 30 | /// </summary> | 21 | /// </summary> |
| 31 | /// <remarks></remarks> | 22 | /// <remarks></remarks> |
| 32 | public enum CpiAssemblyAttributes | 23 | public enum CpiAssemblyAttributes |
| @@ -37,6 +28,8 @@ namespace WixToolset.Extensions | |||
| 37 | RegisterInCommit = (1 << 3) | 28 | RegisterInCommit = (1 << 3) |
| 38 | } | 29 | } |
| 39 | 30 | ||
| 31 | public override XNamespace Namespace => "http://wixtoolset.org/schemas/v4/wxs/complus"; | ||
| 32 | |||
| 40 | /// <summary> | 33 | /// <summary> |
| 41 | /// Processes an element for the Compiler. | 34 | /// Processes an element for the Compiler. |
| 42 | /// </summary> | 35 | /// </summary> |
| @@ -44,7 +37,7 @@ namespace WixToolset.Extensions | |||
| 44 | /// <param name="parentElement">Parent element of element to process.</param> | 37 | /// <param name="parentElement">Parent element of element to process.</param> |
| 45 | /// <param name="element">Element to process.</param> | 38 | /// <param name="element">Element to process.</param> |
| 46 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> | 39 | /// <param name="contextValues">Extra information about the context in which this element is being parsed.</param> |
| 47 | public override void ParseElement(XElement parentElement, XElement element, IDictionary<string, string> context) | 40 | public override void ParseElement(Intermediate intermediate, IntermediateSection section, XElement parentElement, XElement element, IDictionary<string, string> context) |
| 48 | { | 41 | { |
| 49 | switch (parentElement.Name.LocalName) | 42 | switch (parentElement.Name.LocalName) |
| 50 | { | 43 | { |
| @@ -56,49 +49,49 @@ namespace WixToolset.Extensions | |||
| 56 | switch (element.Name.LocalName) | 49 | switch (element.Name.LocalName) |
| 57 | { | 50 | { |
| 58 | case "ComPlusPartition": | 51 | case "ComPlusPartition": |
| 59 | this.ParseComPlusPartitionElement(element, componentId, win64); | 52 | this.ParseComPlusPartitionElement(intermediate, section, element, componentId, win64); |
| 60 | break; | 53 | break; |
| 61 | case "ComPlusPartitionRole": | 54 | case "ComPlusPartitionRole": |
| 62 | this.ParseComPlusPartitionRoleElement(element, componentId, null); | 55 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, componentId, null); |
| 63 | break; | 56 | break; |
| 64 | case "ComPlusUserInPartitionRole": | 57 | case "ComPlusUserInPartitionRole": |
| 65 | this.ParseComPlusUserInPartitionRoleElement(element, componentId, null); | 58 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, element, componentId, null); |
| 66 | break; | 59 | break; |
| 67 | case "ComPlusGroupInPartitionRole": | 60 | case "ComPlusGroupInPartitionRole": |
| 68 | this.ParseComPlusGroupInPartitionRoleElement(element, componentId, null); | 61 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, element, componentId, null); |
| 69 | break; | 62 | break; |
| 70 | case "ComPlusPartitionUser": | 63 | case "ComPlusPartitionUser": |
| 71 | this.ParseComPlusPartitionUserElement(element, componentId, null); | 64 | this.ParseComPlusPartitionUserElement(intermediate, section, element, componentId, null); |
| 72 | break; | 65 | break; |
| 73 | case "ComPlusApplication": | 66 | case "ComPlusApplication": |
| 74 | this.ParseComPlusApplicationElement(element, componentId, win64, null); | 67 | this.ParseComPlusApplicationElement(intermediate, section, element, componentId, win64, null); |
| 75 | break; | 68 | break; |
| 76 | case "ComPlusApplicationRole": | 69 | case "ComPlusApplicationRole": |
| 77 | this.ParseComPlusApplicationRoleElement(element, componentId, null); | 70 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, componentId, null); |
| 78 | break; | 71 | break; |
| 79 | case "ComPlusUserInApplicationRole": | 72 | case "ComPlusUserInApplicationRole": |
| 80 | this.ParseComPlusUserInApplicationRoleElement(element, componentId, null); | 73 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, element, componentId, null); |
| 81 | break; | 74 | break; |
| 82 | case "ComPlusGroupInApplicationRole": | 75 | case "ComPlusGroupInApplicationRole": |
| 83 | this.ParseComPlusGroupInApplicationRoleElement(element, componentId, null); | 76 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, element, componentId, null); |
| 84 | break; | 77 | break; |
| 85 | case "ComPlusAssembly": | 78 | case "ComPlusAssembly": |
| 86 | this.ParseComPlusAssemblyElement(element, componentId, win64, null); | 79 | this.ParseComPlusAssemblyElement(intermediate, section, element, componentId, win64, null); |
| 87 | break; | 80 | break; |
| 88 | case "ComPlusRoleForComponent": | 81 | case "ComPlusRoleForComponent": |
| 89 | this.ParseComPlusRoleForComponentElement(element, componentId, null); | 82 | this.ParseComPlusRoleForComponentElement(intermediate, section, element, componentId, null); |
| 90 | break; | 83 | break; |
| 91 | case "ComPlusRoleForInterface": | 84 | case "ComPlusRoleForInterface": |
| 92 | this.ParseComPlusRoleForInterfaceElement(element, componentId, null); | 85 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, element, componentId, null); |
| 93 | break; | 86 | break; |
| 94 | case "ComPlusRoleForMethod": | 87 | case "ComPlusRoleForMethod": |
| 95 | this.ParseComPlusRoleForMethodElement(element, componentId, null); | 88 | this.ParseComPlusRoleForMethodElement(intermediate, section, element, componentId, null); |
| 96 | break; | 89 | break; |
| 97 | case "ComPlusSubscription": | 90 | case "ComPlusSubscription": |
| 98 | this.ParseComPlusSubscriptionElement(element, componentId, null); | 91 | this.ParseComPlusSubscriptionElement(intermediate, section, element, componentId, null); |
| 99 | break; | 92 | break; |
| 100 | default: | 93 | default: |
| 101 | this.Core.UnexpectedElement(parentElement, element); | 94 | this.ParseHelper.UnexpectedElement(parentElement, element); |
| 102 | break; | 95 | break; |
| 103 | } | 96 | } |
| 104 | break; | 97 | break; |
| @@ -108,24 +101,24 @@ namespace WixToolset.Extensions | |||
| 108 | switch (element.Name.LocalName) | 101 | switch (element.Name.LocalName) |
| 109 | { | 102 | { |
| 110 | case "ComPlusPartition": | 103 | case "ComPlusPartition": |
| 111 | this.ParseComPlusPartitionElement(element, null, false); | 104 | this.ParseComPlusPartitionElement(intermediate, section, element, null, false); |
| 112 | break; | 105 | break; |
| 113 | case "ComPlusPartitionRole": | 106 | case "ComPlusPartitionRole": |
| 114 | this.ParseComPlusPartitionRoleElement(element, null, null); | 107 | this.ParseComPlusPartitionRoleElement(intermediate, section, element, null, null); |
| 115 | break; | 108 | break; |
| 116 | case "ComPlusApplication": | 109 | case "ComPlusApplication": |
| 117 | this.ParseComPlusApplicationElement(element, null, false, null); | 110 | this.ParseComPlusApplicationElement(intermediate, section, element, null, false, null); |
| 118 | break; | 111 | break; |
| 119 | case "ComPlusApplicationRole": | 112 | case "ComPlusApplicationRole": |
| 120 | this.ParseComPlusApplicationRoleElement(element, null, null); | 113 | this.ParseComPlusApplicationRoleElement(intermediate, section, element, null, null); |
| 121 | break; | 114 | break; |
| 122 | default: | 115 | default: |
| 123 | this.Core.UnexpectedElement(parentElement, element); | 116 | this.ParseHelper.UnexpectedElement(parentElement, element); |
| 124 | break; | 117 | break; |
| 125 | } | 118 | } |
| 126 | break; | 119 | break; |
| 127 | default: | 120 | default: |
| 128 | this.Core.UnexpectedElement(parentElement, element); | 121 | this.ParseHelper.UnexpectedElement(parentElement, element); |
| 129 | break; | 122 | break; |
| 130 | } | 123 | } |
| 131 | } | 124 | } |
| @@ -135,9 +128,9 @@ namespace WixToolset.Extensions | |||
| 135 | /// </summary> | 128 | /// </summary> |
| 136 | /// <param name="node">Element to parse.</param> | 129 | /// <param name="node">Element to parse.</param> |
| 137 | /// <param name="componentKey">Identifier of parent component.</param> | 130 | /// <param name="componentKey">Identifier of parent component.</param> |
| 138 | private void ParseComPlusPartitionElement(XElement node, string componentKey, bool win64) | 131 | private void ParseComPlusPartitionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64) |
| 139 | { | 132 | { |
| 140 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 133 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 141 | 134 | ||
| 142 | string key = null; | 135 | string key = null; |
| 143 | string id = null; | 136 | string id = null; |
| @@ -152,49 +145,49 @@ namespace WixToolset.Extensions | |||
| 152 | switch (attrib.Name.LocalName) | 145 | switch (attrib.Name.LocalName) |
| 153 | { | 146 | { |
| 154 | case "Id": | 147 | case "Id": |
| 155 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 148 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 156 | break; | 149 | break; |
| 157 | case "PartitionId": | 150 | case "PartitionId": |
| 158 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 151 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
| 159 | break; | 152 | break; |
| 160 | case "Name": | 153 | case "Name": |
| 161 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 154 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 162 | break; | 155 | break; |
| 163 | case "Changeable": | 156 | case "Changeable": |
| 164 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 157 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 165 | break; | 158 | break; |
| 166 | case "Deleteable": | 159 | case "Deleteable": |
| 167 | if (null == componentKey) | 160 | if (null == componentKey) |
| 168 | { | 161 | { |
| 169 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 162 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 170 | } | 163 | } |
| 171 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 164 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 172 | break; | 165 | break; |
| 173 | case "Description": | 166 | case "Description": |
| 174 | if (null == componentKey) | 167 | if (null == componentKey) |
| 175 | { | 168 | { |
| 176 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 169 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 177 | } | 170 | } |
| 178 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 171 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 179 | break; | 172 | break; |
| 180 | default: | 173 | default: |
| 181 | this.Core.UnexpectedAttribute(node, attrib); | 174 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 182 | break; | 175 | break; |
| 183 | } | 176 | } |
| 184 | } | 177 | } |
| 185 | else | 178 | else |
| 186 | { | 179 | { |
| 187 | this.Core.ParseExtensionAttribute(node, attrib); | 180 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 188 | } | 181 | } |
| 189 | } | 182 | } |
| 190 | 183 | ||
| 191 | if (null != componentKey && null == name) | 184 | if (null != componentKey && null == name) |
| 192 | { | 185 | { |
| 193 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 186 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
| 194 | } | 187 | } |
| 195 | if (null == componentKey && null == id && null == name) | 188 | if (null == componentKey && null == id && null == name) |
| 196 | { | 189 | { |
| 197 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 190 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
| 198 | } | 191 | } |
| 199 | 192 | ||
| 200 | foreach (XElement child in node.Elements()) | 193 | foreach (XElement child in node.Elements()) |
| @@ -204,58 +197,58 @@ namespace WixToolset.Extensions | |||
| 204 | switch (child.Name.LocalName) | 197 | switch (child.Name.LocalName) |
| 205 | { | 198 | { |
| 206 | case "ComPlusPartitionRole": | 199 | case "ComPlusPartitionRole": |
| 207 | this.ParseComPlusPartitionRoleElement(child, componentKey, key); | 200 | this.ParseComPlusPartitionRoleElement(intermediate, section, child, componentKey, key); |
| 208 | break; | 201 | break; |
| 209 | case "ComPlusPartitionUser": | 202 | case "ComPlusPartitionUser": |
| 210 | this.ParseComPlusPartitionUserElement(child, componentKey, key); | 203 | this.ParseComPlusPartitionUserElement(intermediate, section, child, componentKey, key); |
| 211 | break; | 204 | break; |
| 212 | case "ComPlusApplication": | 205 | case "ComPlusApplication": |
| 213 | this.ParseComPlusApplicationElement(child, componentKey, win64, key); | 206 | this.ParseComPlusApplicationElement(intermediate, section, child, componentKey, win64, key); |
| 214 | break; | 207 | break; |
| 215 | default: | 208 | default: |
| 216 | this.Core.UnexpectedElement(node, child); | 209 | this.ParseHelper.UnexpectedElement(node, child); |
| 217 | break; | 210 | break; |
| 218 | } | 211 | } |
| 219 | } | 212 | } |
| 220 | else | 213 | else |
| 221 | { | 214 | { |
| 222 | this.Core.ParseExtensionElement(node, child); | 215 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 223 | } | 216 | } |
| 224 | } | 217 | } |
| 225 | 218 | ||
| 226 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartition"); | 219 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartition"); |
| 227 | row[0] = key; | 220 | row.Set(0, key); |
| 228 | row[1] = componentKey; | 221 | row.Set(1, componentKey); |
| 229 | row[2] = id; | 222 | row.Set(2, id); |
| 230 | row[3] = name; | 223 | row.Set(3, name); |
| 231 | 224 | ||
| 232 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 225 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 233 | while (propertiesEnumerator.MoveNext()) | 226 | while (propertiesEnumerator.MoveNext()) |
| 234 | { | 227 | { |
| 235 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionProperty"); | 228 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionProperty"); |
| 236 | propertyRow[0] = key; | 229 | propertyRow.Set(0, key); |
| 237 | propertyRow[1] = (string)propertiesEnumerator.Key; | 230 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 238 | propertyRow[2] = (string)propertiesEnumerator.Value; | 231 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 239 | } | 232 | } |
| 240 | 233 | ||
| 241 | if (componentKey != null) | 234 | if (componentKey != null) |
| 242 | { | 235 | { |
| 243 | if (win64) | 236 | if (win64) |
| 244 | { | 237 | { |
| 245 | if (this.Core.CurrentPlatform == Platform.IA64) | 238 | if (this.Context.Platform == Platform.IA64) |
| 246 | { | 239 | { |
| 247 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 240 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
| 248 | } | 241 | } |
| 249 | else | 242 | else |
| 250 | { | 243 | { |
| 251 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 244 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
| 252 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 245 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
| 253 | } | 246 | } |
| 254 | } | 247 | } |
| 255 | else | 248 | else |
| 256 | { | 249 | { |
| 257 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 250 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
| 258 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 251 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
| 259 | } | 252 | } |
| 260 | } | 253 | } |
| 261 | } | 254 | } |
| @@ -266,9 +259,9 @@ namespace WixToolset.Extensions | |||
| 266 | /// <param name="node">Element to parse.</param> | 259 | /// <param name="node">Element to parse.</param> |
| 267 | /// <param name="componentKey">Identifier of parent component.</param> | 260 | /// <param name="componentKey">Identifier of parent component.</param> |
| 268 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 261 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
| 269 | private void ParseComPlusPartitionRoleElement(XElement node, string componentKey, string partitionKey) | 262 | private void ParseComPlusPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
| 270 | { | 263 | { |
| 271 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 264 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 272 | 265 | ||
| 273 | string key = null; | 266 | string key = null; |
| 274 | string name = null; | 267 | string name = null; |
| @@ -280,33 +273,33 @@ namespace WixToolset.Extensions | |||
| 280 | switch (attrib.Name.LocalName) | 273 | switch (attrib.Name.LocalName) |
| 281 | { | 274 | { |
| 282 | case "Id": | 275 | case "Id": |
| 283 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 276 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 284 | break; | 277 | break; |
| 285 | case "Partition": | 278 | case "Partition": |
| 286 | if (null != partitionKey) | 279 | if (null != partitionKey) |
| 287 | { | 280 | { |
| 288 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 281 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 289 | } | 282 | } |
| 290 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 283 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 291 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 284 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
| 292 | break; | 285 | break; |
| 293 | case "Name": | 286 | case "Name": |
| 294 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 287 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 295 | break; | 288 | break; |
| 296 | default: | 289 | default: |
| 297 | this.Core.UnexpectedAttribute(node, attrib); | 290 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 298 | break; | 291 | break; |
| 299 | } | 292 | } |
| 300 | } | 293 | } |
| 301 | else | 294 | else |
| 302 | { | 295 | { |
| 303 | this.Core.ParseExtensionAttribute(node, attrib); | 296 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 304 | } | 297 | } |
| 305 | } | 298 | } |
| 306 | 299 | ||
| 307 | if (null == partitionKey) | 300 | if (null == partitionKey) |
| 308 | { | 301 | { |
| 309 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 302 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
| 310 | } | 303 | } |
| 311 | 304 | ||
| 312 | foreach (XElement child in node.Elements()) | 305 | foreach (XElement child in node.Elements()) |
| @@ -316,27 +309,27 @@ namespace WixToolset.Extensions | |||
| 316 | switch (child.Name.LocalName) | 309 | switch (child.Name.LocalName) |
| 317 | { | 310 | { |
| 318 | case "ComPlusUserInPartitionRole": | 311 | case "ComPlusUserInPartitionRole": |
| 319 | this.ParseComPlusUserInPartitionRoleElement(child, componentKey, key); | 312 | this.ParseComPlusUserInPartitionRoleElement(intermediate, section, child, componentKey, key); |
| 320 | break; | 313 | break; |
| 321 | case "ComPlusGroupInPartitionRole": | 314 | case "ComPlusGroupInPartitionRole": |
| 322 | this.ParseComPlusGroupInPartitionRoleElement(child, componentKey, key); | 315 | this.ParseComPlusGroupInPartitionRoleElement(intermediate, section, child, componentKey, key); |
| 323 | break; | 316 | break; |
| 324 | default: | 317 | default: |
| 325 | this.Core.UnexpectedElement(node, child); | 318 | this.ParseHelper.UnexpectedElement(node, child); |
| 326 | break; | 319 | break; |
| 327 | } | 320 | } |
| 328 | } | 321 | } |
| 329 | else | 322 | else |
| 330 | { | 323 | { |
| 331 | this.Core.ParseExtensionElement(node, child); | 324 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 332 | } | 325 | } |
| 333 | } | 326 | } |
| 334 | 327 | ||
| 335 | // add table row | 328 | // add table row |
| 336 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionRole"); | 329 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionRole"); |
| 337 | row[0] = key; | 330 | row.Set(0, key); |
| 338 | row[1] = partitionKey; | 331 | row.Set(1, partitionKey); |
| 339 | row[3] = name; | 332 | row.Set(3, name); |
| 340 | } | 333 | } |
| 341 | 334 | ||
| 342 | /// <summary> | 335 | /// <summary> |
| @@ -345,9 +338,9 @@ namespace WixToolset.Extensions | |||
| 345 | /// <param name="node">Element to parse.</param> | 338 | /// <param name="node">Element to parse.</param> |
| 346 | /// <param name="componentKey">Identifier of parent component.</param> | 339 | /// <param name="componentKey">Identifier of parent component.</param> |
| 347 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 340 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
| 348 | private void ParseComPlusUserInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 341 | private void ParseComPlusUserInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
| 349 | { | 342 | { |
| 350 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 343 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 351 | 344 | ||
| 352 | string key = null; | 345 | string key = null; |
| 353 | string user = null; | 346 | string user = null; |
| @@ -359,41 +352,41 @@ namespace WixToolset.Extensions | |||
| 359 | switch (attrib.Name.LocalName) | 352 | switch (attrib.Name.LocalName) |
| 360 | { | 353 | { |
| 361 | case "Id": | 354 | case "Id": |
| 362 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 355 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 363 | break; | 356 | break; |
| 364 | case "PartitionRole": | 357 | case "PartitionRole": |
| 365 | if (null != partitionRoleKey) | 358 | if (null != partitionRoleKey) |
| 366 | { | 359 | { |
| 367 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 360 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 368 | } | 361 | } |
| 369 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 362 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 370 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 363 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
| 371 | break; | 364 | break; |
| 372 | case "User": | 365 | case "User": |
| 373 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 366 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 374 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 367 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
| 375 | break; | 368 | break; |
| 376 | default: | 369 | default: |
| 377 | this.Core.UnexpectedAttribute(node, attrib); | 370 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 378 | break; | 371 | break; |
| 379 | } | 372 | } |
| 380 | } | 373 | } |
| 381 | else | 374 | else |
| 382 | { | 375 | { |
| 383 | this.Core.ParseExtensionAttribute(node, attrib); | 376 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 384 | } | 377 | } |
| 385 | } | 378 | } |
| 386 | 379 | ||
| 387 | if (null == partitionRoleKey) | 380 | if (null == partitionRoleKey) |
| 388 | { | 381 | { |
| 389 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 382 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
| 390 | } | 383 | } |
| 391 | 384 | ||
| 392 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInPartitionRole"); | 385 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInPartitionRole"); |
| 393 | row[0] = key; | 386 | row.Set(0, key); |
| 394 | row[1] = partitionRoleKey; | 387 | row.Set(1, partitionRoleKey); |
| 395 | row[2] = componentKey; | 388 | row.Set(2, componentKey); |
| 396 | row[3] = user; | 389 | row.Set(3, user); |
| 397 | } | 390 | } |
| 398 | 391 | ||
| 399 | /// <summary> | 392 | /// <summary> |
| @@ -402,9 +395,9 @@ namespace WixToolset.Extensions | |||
| 402 | /// <param name="node">Element to parse.</param> | 395 | /// <param name="node">Element to parse.</param> |
| 403 | /// <param name="componentKey">Identifier of parent component.</param> | 396 | /// <param name="componentKey">Identifier of parent component.</param> |
| 404 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 397 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
| 405 | private void ParseComPlusGroupInPartitionRoleElement(XElement node, string componentKey, string partitionRoleKey) | 398 | private void ParseComPlusGroupInPartitionRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionRoleKey) |
| 406 | { | 399 | { |
| 407 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 400 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 408 | 401 | ||
| 409 | string key = null; | 402 | string key = null; |
| 410 | string group = null; | 403 | string group = null; |
| @@ -416,41 +409,41 @@ namespace WixToolset.Extensions | |||
| 416 | switch (attrib.Name.LocalName) | 409 | switch (attrib.Name.LocalName) |
| 417 | { | 410 | { |
| 418 | case "Id": | 411 | case "Id": |
| 419 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 412 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 420 | break; | 413 | break; |
| 421 | case "PartitionRole": | 414 | case "PartitionRole": |
| 422 | if (null != partitionRoleKey) | 415 | if (null != partitionRoleKey) |
| 423 | { | 416 | { |
| 424 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 417 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 425 | } | 418 | } |
| 426 | partitionRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 419 | partitionRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 427 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); | 420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartitionRole", partitionRoleKey); |
| 428 | break; | 421 | break; |
| 429 | case "Group": | 422 | case "Group": |
| 430 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 423 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 431 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 424 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
| 432 | break; | 425 | break; |
| 433 | default: | 426 | default: |
| 434 | this.Core.UnexpectedAttribute(node, attrib); | 427 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 435 | break; | 428 | break; |
| 436 | } | 429 | } |
| 437 | } | 430 | } |
| 438 | else | 431 | else |
| 439 | { | 432 | { |
| 440 | this.Core.ParseExtensionAttribute(node, attrib); | 433 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 441 | } | 434 | } |
| 442 | } | 435 | } |
| 443 | 436 | ||
| 444 | if (null == partitionRoleKey) | 437 | if (null == partitionRoleKey) |
| 445 | { | 438 | { |
| 446 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); | 439 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "PartitionRole")); |
| 447 | } | 440 | } |
| 448 | 441 | ||
| 449 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInPartitionRole"); | 442 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInPartitionRole"); |
| 450 | row[0] = key; | 443 | row.Set(0, key); |
| 451 | row[1] = partitionRoleKey; | 444 | row.Set(1, partitionRoleKey); |
| 452 | row[2] = componentKey; | 445 | row.Set(2, componentKey); |
| 453 | row[3] = group; | 446 | row.Set(3, group); |
| 454 | } | 447 | } |
| 455 | 448 | ||
| 456 | /// <summary> | 449 | /// <summary> |
| @@ -458,9 +451,9 @@ namespace WixToolset.Extensions | |||
| 458 | /// </summary> | 451 | /// </summary> |
| 459 | /// <param name="node">Element to parse.</param> | 452 | /// <param name="node">Element to parse.</param> |
| 460 | /// <param name="componentKey">Identifier of parent component.</param> | 453 | /// <param name="componentKey">Identifier of parent component.</param> |
| 461 | private void ParseComPlusPartitionUserElement(XElement node, string componentKey, string partitionKey) | 454 | private void ParseComPlusPartitionUserElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string partitionKey) |
| 462 | { | 455 | { |
| 463 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 456 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 464 | 457 | ||
| 465 | string key = null; | 458 | string key = null; |
| 466 | string user = null; | 459 | string user = null; |
| @@ -472,41 +465,41 @@ namespace WixToolset.Extensions | |||
| 472 | switch (attrib.Name.LocalName) | 465 | switch (attrib.Name.LocalName) |
| 473 | { | 466 | { |
| 474 | case "Id": | 467 | case "Id": |
| 475 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 468 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 476 | break; | 469 | break; |
| 477 | case "Partition": | 470 | case "Partition": |
| 478 | if (null != partitionKey) | 471 | if (null != partitionKey) |
| 479 | { | 472 | { |
| 480 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 473 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 481 | } | 474 | } |
| 482 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 475 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 483 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 476 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
| 484 | break; | 477 | break; |
| 485 | case "User": | 478 | case "User": |
| 486 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 479 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 487 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 480 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
| 488 | break; | 481 | break; |
| 489 | default: | 482 | default: |
| 490 | this.Core.UnexpectedAttribute(node, attrib); | 483 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 491 | break; | 484 | break; |
| 492 | } | 485 | } |
| 493 | } | 486 | } |
| 494 | else | 487 | else |
| 495 | { | 488 | { |
| 496 | this.Core.ParseExtensionAttribute(node, attrib); | 489 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 497 | } | 490 | } |
| 498 | } | 491 | } |
| 499 | 492 | ||
| 500 | if (null == partitionKey) | 493 | if (null == partitionKey) |
| 501 | { | 494 | { |
| 502 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); | 495 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Partition")); |
| 503 | } | 496 | } |
| 504 | 497 | ||
| 505 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusPartitionUser"); | 498 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusPartitionUser"); |
| 506 | row[0] = key; | 499 | row.Set(0, key); |
| 507 | row[1] = partitionKey; | 500 | row.Set(1, partitionKey); |
| 508 | row[2] = componentKey; | 501 | row.Set(2, componentKey); |
| 509 | row[3] = user; | 502 | row.Set(3, user); |
| 510 | } | 503 | } |
| 511 | 504 | ||
| 512 | /// <summary> | 505 | /// <summary> |
| @@ -515,9 +508,9 @@ namespace WixToolset.Extensions | |||
| 515 | /// <param name="node">Element to parse.</param> | 508 | /// <param name="node">Element to parse.</param> |
| 516 | /// <param name="componentKey">Identifier of parent component.</param> | 509 | /// <param name="componentKey">Identifier of parent component.</param> |
| 517 | /// <param name="partitionKey">Optional identifier of parent partition.</param> | 510 | /// <param name="partitionKey">Optional identifier of parent partition.</param> |
| 518 | private void ParseComPlusApplicationElement(XElement node, string componentKey, bool win64, string partitionKey) | 511 | private void ParseComPlusApplicationElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string partitionKey) |
| 519 | { | 512 | { |
| 520 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 513 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 521 | 514 | ||
| 522 | string key = null; | 515 | string key = null; |
| 523 | string id = null; | 516 | string id = null; |
| @@ -532,35 +525,35 @@ namespace WixToolset.Extensions | |||
| 532 | switch (attrib.Name.LocalName) | 525 | switch (attrib.Name.LocalName) |
| 533 | { | 526 | { |
| 534 | case "Id": | 527 | case "Id": |
| 535 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 528 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 536 | break; | 529 | break; |
| 537 | case "Partition": | 530 | case "Partition": |
| 538 | if (null != partitionKey) | 531 | if (null != partitionKey) |
| 539 | { | 532 | { |
| 540 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 533 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 541 | } | 534 | } |
| 542 | partitionKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 535 | partitionKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 543 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusPartition", partitionKey); | 536 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusPartition", partitionKey); |
| 544 | break; | 537 | break; |
| 545 | case "ApplicationId": | 538 | case "ApplicationId": |
| 546 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 539 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
| 547 | break; | 540 | break; |
| 548 | case "Name": | 541 | case "Name": |
| 549 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 542 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 550 | break; | 543 | break; |
| 551 | case "ThreeGigSupportEnabled": | 544 | case "ThreeGigSupportEnabled": |
| 552 | if (null == componentKey) | 545 | if (null == componentKey) |
| 553 | { | 546 | { |
| 554 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 547 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 555 | } | 548 | } |
| 556 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 549 | properties["3GigSupportEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 557 | break; | 550 | break; |
| 558 | case "AccessChecksLevel": | 551 | case "AccessChecksLevel": |
| 559 | if (null == componentKey) | 552 | if (null == componentKey) |
| 560 | { | 553 | { |
| 561 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 554 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 562 | } | 555 | } |
| 563 | string accessChecksLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 556 | string accessChecksLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 564 | switch (accessChecksLevelValue) | 557 | switch (accessChecksLevelValue) |
| 565 | { | 558 | { |
| 566 | case "applicationLevel": | 559 | case "applicationLevel": |
| @@ -570,16 +563,16 @@ namespace WixToolset.Extensions | |||
| 570 | properties["AccessChecksLevel"] = "1"; | 563 | properties["AccessChecksLevel"] = "1"; |
| 571 | break; | 564 | break; |
| 572 | default: | 565 | default: |
| 573 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); | 566 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AccessChecksLevel", accessChecksLevelValue, "applicationLevel", "applicationComponentLevel")); |
| 574 | break; | 567 | break; |
| 575 | } | 568 | } |
| 576 | break; | 569 | break; |
| 577 | case "Activation": | 570 | case "Activation": |
| 578 | if (null == componentKey) | 571 | if (null == componentKey) |
| 579 | { | 572 | { |
| 580 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 573 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 581 | } | 574 | } |
| 582 | string activationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 575 | string activationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 583 | switch (activationValue) | 576 | switch (activationValue) |
| 584 | { | 577 | { |
| 585 | case "inproc": | 578 | case "inproc": |
| @@ -589,30 +582,30 @@ namespace WixToolset.Extensions | |||
| 589 | properties["Activation"] = "Local"; | 582 | properties["Activation"] = "Local"; |
| 590 | break; | 583 | break; |
| 591 | default: | 584 | default: |
| 592 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); | 585 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Activation", activationValue, "inproc", "local")); |
| 593 | break; | 586 | break; |
| 594 | } | 587 | } |
| 595 | break; | 588 | break; |
| 596 | case "ApplicationAccessChecksEnabled": | 589 | case "ApplicationAccessChecksEnabled": |
| 597 | if (null == componentKey) | 590 | if (null == componentKey) |
| 598 | { | 591 | { |
| 599 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 592 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 600 | } | 593 | } |
| 601 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 594 | properties["ApplicationAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 602 | break; | 595 | break; |
| 603 | case "ApplicationDirectory": | 596 | case "ApplicationDirectory": |
| 604 | if (null == componentKey) | 597 | if (null == componentKey) |
| 605 | { | 598 | { |
| 606 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 599 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 607 | } | 600 | } |
| 608 | properties["ApplicationDirectory"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 601 | properties["ApplicationDirectory"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 609 | break; | 602 | break; |
| 610 | case "Authentication": | 603 | case "Authentication": |
| 611 | if (null == componentKey) | 604 | if (null == componentKey) |
| 612 | { | 605 | { |
| 613 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 606 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 614 | } | 607 | } |
| 615 | string authenticationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 608 | string authenticationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 616 | switch (authenticationValue) | 609 | switch (authenticationValue) |
| 617 | { | 610 | { |
| 618 | case "default": | 611 | case "default": |
| @@ -637,16 +630,16 @@ namespace WixToolset.Extensions | |||
| 637 | properties["Authentication"] = "6"; | 630 | properties["Authentication"] = "6"; |
| 638 | break; | 631 | break; |
| 639 | default: | 632 | default: |
| 640 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); | 633 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "Authentication", authenticationValue, "default", "none", "connect", "call", "packet", "integrity", "privacy")); |
| 641 | break; | 634 | break; |
| 642 | } | 635 | } |
| 643 | break; | 636 | break; |
| 644 | case "AuthenticationCapability": | 637 | case "AuthenticationCapability": |
| 645 | if (null == componentKey) | 638 | if (null == componentKey) |
| 646 | { | 639 | { |
| 647 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 640 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 648 | } | 641 | } |
| 649 | string authenticationCapabilityValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 642 | string authenticationCapabilityValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 650 | switch (authenticationCapabilityValue) | 643 | switch (authenticationCapabilityValue) |
| 651 | { | 644 | { |
| 652 | case "none": | 645 | case "none": |
| @@ -662,110 +655,110 @@ namespace WixToolset.Extensions | |||
| 662 | properties["AuthenticationCapability"] = "64"; | 655 | properties["AuthenticationCapability"] = "64"; |
| 663 | break; | 656 | break; |
| 664 | default: | 657 | default: |
| 665 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); | 658 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "AuthenticationCapability", authenticationCapabilityValue, "none", "secureReference", "staticCloaking", "dynamicCloaking")); |
| 666 | break; | 659 | break; |
| 667 | } | 660 | } |
| 668 | break; | 661 | break; |
| 669 | case "Changeable": | 662 | case "Changeable": |
| 670 | this.Core.OnMessage(WixWarnings.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 663 | this.Messaging.Write(WarningMessages.DeprecatedAttribute(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 671 | break; | 664 | break; |
| 672 | case "CommandLine": | 665 | case "CommandLine": |
| 673 | if (null == componentKey) | 666 | if (null == componentKey) |
| 674 | { | 667 | { |
| 675 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 668 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 676 | } | 669 | } |
| 677 | properties["CommandLine"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 670 | properties["CommandLine"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 678 | break; | 671 | break; |
| 679 | case "ConcurrentApps": | 672 | case "ConcurrentApps": |
| 680 | if (null == componentKey) | 673 | if (null == componentKey) |
| 681 | { | 674 | { |
| 682 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 675 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 683 | } | 676 | } |
| 684 | properties["ConcurrentApps"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 677 | properties["ConcurrentApps"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 685 | break; | 678 | break; |
| 686 | case "CreatedBy": | 679 | case "CreatedBy": |
| 687 | if (null == componentKey) | 680 | if (null == componentKey) |
| 688 | { | 681 | { |
| 689 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 682 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 690 | } | 683 | } |
| 691 | properties["CreatedBy"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 684 | properties["CreatedBy"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 692 | break; | 685 | break; |
| 693 | case "CRMEnabled": | 686 | case "CRMEnabled": |
| 694 | if (null == componentKey) | 687 | if (null == componentKey) |
| 695 | { | 688 | { |
| 696 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 689 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 697 | } | 690 | } |
| 698 | properties["CRMEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 691 | properties["CRMEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 699 | break; | 692 | break; |
| 700 | case "CRMLogFile": | 693 | case "CRMLogFile": |
| 701 | if (null == componentKey) | 694 | if (null == componentKey) |
| 702 | { | 695 | { |
| 703 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 696 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 704 | } | 697 | } |
| 705 | properties["CRMLogFile"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 698 | properties["CRMLogFile"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 706 | break; | 699 | break; |
| 707 | case "Deleteable": | 700 | case "Deleteable": |
| 708 | if (null == componentKey) | 701 | if (null == componentKey) |
| 709 | { | 702 | { |
| 710 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 703 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 711 | } | 704 | } |
| 712 | properties["Deleteable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 705 | properties["Deleteable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 713 | break; | 706 | break; |
| 714 | case "Description": | 707 | case "Description": |
| 715 | if (null == componentKey) | 708 | if (null == componentKey) |
| 716 | { | 709 | { |
| 717 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 710 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 718 | } | 711 | } |
| 719 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 712 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 720 | break; | 713 | break; |
| 721 | case "DumpEnabled": | 714 | case "DumpEnabled": |
| 722 | if (null == componentKey) | 715 | if (null == componentKey) |
| 723 | { | 716 | { |
| 724 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 717 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 725 | } | 718 | } |
| 726 | properties["DumpEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 719 | properties["DumpEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 727 | break; | 720 | break; |
| 728 | case "DumpOnException": | 721 | case "DumpOnException": |
| 729 | if (null == componentKey) | 722 | if (null == componentKey) |
| 730 | { | 723 | { |
| 731 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 724 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 732 | } | 725 | } |
| 733 | properties["DumpOnException"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 726 | properties["DumpOnException"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 734 | break; | 727 | break; |
| 735 | case "DumpOnFailfast": | 728 | case "DumpOnFailfast": |
| 736 | if (null == componentKey) | 729 | if (null == componentKey) |
| 737 | { | 730 | { |
| 738 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 731 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 739 | } | 732 | } |
| 740 | properties["DumpOnFailfast"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 733 | properties["DumpOnFailfast"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 741 | break; | 734 | break; |
| 742 | case "DumpPath": | 735 | case "DumpPath": |
| 743 | if (null == componentKey) | 736 | if (null == componentKey) |
| 744 | { | 737 | { |
| 745 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 738 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 746 | } | 739 | } |
| 747 | properties["DumpPath"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 740 | properties["DumpPath"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 748 | break; | 741 | break; |
| 749 | case "EventsEnabled": | 742 | case "EventsEnabled": |
| 750 | if (null == componentKey) | 743 | if (null == componentKey) |
| 751 | { | 744 | { |
| 752 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 745 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 753 | } | 746 | } |
| 754 | properties["EventsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 747 | properties["EventsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 755 | break; | 748 | break; |
| 756 | case "Identity": | 749 | case "Identity": |
| 757 | if (null == componentKey) | 750 | if (null == componentKey) |
| 758 | { | 751 | { |
| 759 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 752 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 760 | } | 753 | } |
| 761 | properties["Identity"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 754 | properties["Identity"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 762 | break; | 755 | break; |
| 763 | case "ImpersonationLevel": | 756 | case "ImpersonationLevel": |
| 764 | if (null == componentKey) | 757 | if (null == componentKey) |
| 765 | { | 758 | { |
| 766 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 759 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 767 | } | 760 | } |
| 768 | string impersonationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 761 | string impersonationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 769 | switch (impersonationLevelValue) | 762 | switch (impersonationLevelValue) |
| 770 | { | 763 | { |
| 771 | case "anonymous": | 764 | case "anonymous": |
| @@ -781,37 +774,37 @@ namespace WixToolset.Extensions | |||
| 781 | properties["ImpersonationLevel"] = "4"; | 774 | properties["ImpersonationLevel"] = "4"; |
| 782 | break; | 775 | break; |
| 783 | default: | 776 | default: |
| 784 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); | 777 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "ImpersonationLevel", impersonationLevelValue, "anonymous", "identify", "impersonate", "delegate")); |
| 785 | break; | 778 | break; |
| 786 | } | 779 | } |
| 787 | break; | 780 | break; |
| 788 | case "IsEnabled": | 781 | case "IsEnabled": |
| 789 | if (null == componentKey) | 782 | if (null == componentKey) |
| 790 | { | 783 | { |
| 791 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 784 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 792 | } | 785 | } |
| 793 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 786 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 794 | break; | 787 | break; |
| 795 | case "MaxDumpCount": | 788 | case "MaxDumpCount": |
| 796 | if (null == componentKey) | 789 | if (null == componentKey) |
| 797 | { | 790 | { |
| 798 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 791 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 799 | } | 792 | } |
| 800 | properties["MaxDumpCount"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 793 | properties["MaxDumpCount"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 801 | break; | 794 | break; |
| 802 | case "Password": | 795 | case "Password": |
| 803 | if (null == componentKey) | 796 | if (null == componentKey) |
| 804 | { | 797 | { |
| 805 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 798 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 806 | } | 799 | } |
| 807 | properties["Password"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 800 | properties["Password"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 808 | break; | 801 | break; |
| 809 | case "QCAuthenticateMsgs": | 802 | case "QCAuthenticateMsgs": |
| 810 | if (null == componentKey) | 803 | if (null == componentKey) |
| 811 | { | 804 | { |
| 812 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 805 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 813 | } | 806 | } |
| 814 | string qcAuthenticateMsgsValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 807 | string qcAuthenticateMsgsValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 815 | switch (qcAuthenticateMsgsValue) | 808 | switch (qcAuthenticateMsgsValue) |
| 816 | { | 809 | { |
| 817 | case "secureApps": | 810 | case "secureApps": |
| @@ -824,128 +817,128 @@ namespace WixToolset.Extensions | |||
| 824 | properties["QCAuthenticateMsgs"] = "2"; | 817 | properties["QCAuthenticateMsgs"] = "2"; |
| 825 | break; | 818 | break; |
| 826 | default: | 819 | default: |
| 827 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); | 820 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "QCAuthenticateMsgs", qcAuthenticateMsgsValue, "secureApps", "off", "on")); |
| 828 | break; | 821 | break; |
| 829 | } | 822 | } |
| 830 | break; | 823 | break; |
| 831 | case "QCListenerMaxThreads": | 824 | case "QCListenerMaxThreads": |
| 832 | if (null == componentKey) | 825 | if (null == componentKey) |
| 833 | { | 826 | { |
| 834 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 827 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 835 | } | 828 | } |
| 836 | properties["QCListenerMaxThreads"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 829 | properties["QCListenerMaxThreads"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 837 | break; | 830 | break; |
| 838 | case "QueueListenerEnabled": | 831 | case "QueueListenerEnabled": |
| 839 | if (null == componentKey) | 832 | if (null == componentKey) |
| 840 | { | 833 | { |
| 841 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 834 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 842 | } | 835 | } |
| 843 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 836 | properties["QueueListenerEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 844 | break; | 837 | break; |
| 845 | case "QueuingEnabled": | 838 | case "QueuingEnabled": |
| 846 | if (null == componentKey) | 839 | if (null == componentKey) |
| 847 | { | 840 | { |
| 848 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 841 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 849 | } | 842 | } |
| 850 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 843 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 851 | break; | 844 | break; |
| 852 | case "RecycleActivationLimit": | 845 | case "RecycleActivationLimit": |
| 853 | if (null == componentKey) | 846 | if (null == componentKey) |
| 854 | { | 847 | { |
| 855 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 848 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 856 | } | 849 | } |
| 857 | properties["RecycleActivationLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 850 | properties["RecycleActivationLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 858 | break; | 851 | break; |
| 859 | case "RecycleCallLimit": | 852 | case "RecycleCallLimit": |
| 860 | if (null == componentKey) | 853 | if (null == componentKey) |
| 861 | { | 854 | { |
| 862 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 855 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 863 | } | 856 | } |
| 864 | properties["RecycleCallLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 857 | properties["RecycleCallLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 865 | break; | 858 | break; |
| 866 | case "RecycleExpirationTimeout": | 859 | case "RecycleExpirationTimeout": |
| 867 | if (null == componentKey) | 860 | if (null == componentKey) |
| 868 | { | 861 | { |
| 869 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 862 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 870 | } | 863 | } |
| 871 | properties["RecycleExpirationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 864 | properties["RecycleExpirationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 872 | break; | 865 | break; |
| 873 | case "RecycleLifetimeLimit": | 866 | case "RecycleLifetimeLimit": |
| 874 | if (null == componentKey) | 867 | if (null == componentKey) |
| 875 | { | 868 | { |
| 876 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 869 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 877 | } | 870 | } |
| 878 | properties["RecycleLifetimeLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 871 | properties["RecycleLifetimeLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 879 | break; | 872 | break; |
| 880 | case "RecycleMemoryLimit": | 873 | case "RecycleMemoryLimit": |
| 881 | if (null == componentKey) | 874 | if (null == componentKey) |
| 882 | { | 875 | { |
| 883 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 876 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 884 | } | 877 | } |
| 885 | properties["RecycleMemoryLimit"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 878 | properties["RecycleMemoryLimit"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 886 | break; | 879 | break; |
| 887 | case "Replicable": | 880 | case "Replicable": |
| 888 | if (null == componentKey) | 881 | if (null == componentKey) |
| 889 | { | 882 | { |
| 890 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 883 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 891 | } | 884 | } |
| 892 | properties["Replicable"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 885 | properties["Replicable"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 893 | break; | 886 | break; |
| 894 | case "RunForever": | 887 | case "RunForever": |
| 895 | if (null == componentKey) | 888 | if (null == componentKey) |
| 896 | { | 889 | { |
| 897 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 890 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 898 | } | 891 | } |
| 899 | properties["RunForever"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 892 | properties["RunForever"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 900 | break; | 893 | break; |
| 901 | case "ShutdownAfter": | 894 | case "ShutdownAfter": |
| 902 | if (null == componentKey) | 895 | if (null == componentKey) |
| 903 | { | 896 | { |
| 904 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 897 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 905 | } | 898 | } |
| 906 | properties["ShutdownAfter"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 899 | properties["ShutdownAfter"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 907 | break; | 900 | break; |
| 908 | case "SoapActivated": | 901 | case "SoapActivated": |
| 909 | if (null == componentKey) | 902 | if (null == componentKey) |
| 910 | { | 903 | { |
| 911 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 904 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 912 | } | 905 | } |
| 913 | properties["SoapActivated"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 906 | properties["SoapActivated"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 914 | break; | 907 | break; |
| 915 | case "SoapBaseUrl": | 908 | case "SoapBaseUrl": |
| 916 | if (null == componentKey) | 909 | if (null == componentKey) |
| 917 | { | 910 | { |
| 918 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 911 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 919 | } | 912 | } |
| 920 | properties["SoapBaseUrl"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 913 | properties["SoapBaseUrl"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 921 | break; | 914 | break; |
| 922 | case "SoapMailTo": | 915 | case "SoapMailTo": |
| 923 | if (null == componentKey) | 916 | if (null == componentKey) |
| 924 | { | 917 | { |
| 925 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 918 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 926 | } | 919 | } |
| 927 | properties["SoapMailTo"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 920 | properties["SoapMailTo"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 928 | break; | 921 | break; |
| 929 | case "SoapVRoot": | 922 | case "SoapVRoot": |
| 930 | if (null == componentKey) | 923 | if (null == componentKey) |
| 931 | { | 924 | { |
| 932 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 925 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 933 | } | 926 | } |
| 934 | properties["SoapVRoot"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 927 | properties["SoapVRoot"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 935 | break; | 928 | break; |
| 936 | case "SRPEnabled": | 929 | case "SRPEnabled": |
| 937 | if (null == componentKey) | 930 | if (null == componentKey) |
| 938 | { | 931 | { |
| 939 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 932 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 940 | } | 933 | } |
| 941 | properties["SRPEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 934 | properties["SRPEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 942 | break; | 935 | break; |
| 943 | case "SRPTrustLevel": | 936 | case "SRPTrustLevel": |
| 944 | if (null == componentKey) | 937 | if (null == componentKey) |
| 945 | { | 938 | { |
| 946 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 939 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 947 | } | 940 | } |
| 948 | string srpTrustLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 941 | string srpTrustLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 949 | switch (srpTrustLevelValue) | 942 | switch (srpTrustLevelValue) |
| 950 | { | 943 | { |
| 951 | case "disallowed": | 944 | case "disallowed": |
| @@ -955,28 +948,28 @@ namespace WixToolset.Extensions | |||
| 955 | properties["SRPTrustLevel"] = "262144"; | 948 | properties["SRPTrustLevel"] = "262144"; |
| 956 | break; | 949 | break; |
| 957 | default: | 950 | default: |
| 958 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); | 951 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusApplication", "SRPTrustLevel", srpTrustLevelValue, "disallowed", "fullyTrusted")); |
| 959 | break; | 952 | break; |
| 960 | } | 953 | } |
| 961 | break; | 954 | break; |
| 962 | default: | 955 | default: |
| 963 | this.Core.UnexpectedAttribute(node, attrib); | 956 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 964 | break; | 957 | break; |
| 965 | } | 958 | } |
| 966 | } | 959 | } |
| 967 | else | 960 | else |
| 968 | { | 961 | { |
| 969 | this.Core.ParseExtensionAttribute(node, attrib); | 962 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 970 | } | 963 | } |
| 971 | } | 964 | } |
| 972 | 965 | ||
| 973 | if (null != componentKey && null == name) | 966 | if (null != componentKey && null == name) |
| 974 | { | 967 | { |
| 975 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); | 968 | this.Messaging.Write(ComPlusErrors.RequiredAttributeUnderComponent(sourceLineNumbers, node.Name.LocalName, "Name")); |
| 976 | } | 969 | } |
| 977 | if (null == componentKey && null == id && null == name) | 970 | if (null == componentKey && null == id && null == name) |
| 978 | { | 971 | { |
| 979 | this.Core.OnMessage(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); | 972 | this.Messaging.Write(ComPlusErrors.RequiredAttributeNotUnderComponent(sourceLineNumbers, node.Name.LocalName, "Id", "Name")); |
| 980 | } | 973 | } |
| 981 | 974 | ||
| 982 | foreach (XElement child in node.Elements()) | 975 | foreach (XElement child in node.Elements()) |
| @@ -986,56 +979,56 @@ namespace WixToolset.Extensions | |||
| 986 | switch (child.Name.LocalName) | 979 | switch (child.Name.LocalName) |
| 987 | { | 980 | { |
| 988 | case "ComPlusApplicationRole": | 981 | case "ComPlusApplicationRole": |
| 989 | this.ParseComPlusApplicationRoleElement(child, componentKey, key); | 982 | this.ParseComPlusApplicationRoleElement(intermediate, section, child, componentKey, key); |
| 990 | break; | 983 | break; |
| 991 | case "ComPlusAssembly": | 984 | case "ComPlusAssembly": |
| 992 | this.ParseComPlusAssemblyElement(child, componentKey, win64, key); | 985 | this.ParseComPlusAssemblyElement(intermediate, section, child, componentKey, win64, key); |
| 993 | break; | 986 | break; |
| 994 | default: | 987 | default: |
| 995 | this.Core.UnexpectedElement(node, child); | 988 | this.ParseHelper.UnexpectedElement(node, child); |
| 996 | break; | 989 | break; |
| 997 | } | 990 | } |
| 998 | } | 991 | } |
| 999 | else | 992 | else |
| 1000 | { | 993 | { |
| 1001 | this.Core.ParseExtensionElement(node, child); | 994 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1002 | } | 995 | } |
| 1003 | } | 996 | } |
| 1004 | 997 | ||
| 1005 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplication"); | 998 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplication"); |
| 1006 | row[0] = key; | 999 | row.Set(0, key); |
| 1007 | row[1] = partitionKey; | 1000 | row.Set(1, partitionKey); |
| 1008 | row[2] = componentKey; | 1001 | row.Set(2, componentKey); |
| 1009 | row[3] = id; | 1002 | row.Set(3, id); |
| 1010 | row[4] = name; | 1003 | row.Set(4, name); |
| 1011 | 1004 | ||
| 1012 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1005 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 1013 | while (propertiesEnumerator.MoveNext()) | 1006 | while (propertiesEnumerator.MoveNext()) |
| 1014 | { | 1007 | { |
| 1015 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationProperty"); | 1008 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationProperty"); |
| 1016 | propertyRow[0] = key; | 1009 | propertyRow.Set(0, key); |
| 1017 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1010 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 1018 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1011 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 1019 | } | 1012 | } |
| 1020 | 1013 | ||
| 1021 | if (componentKey != null) | 1014 | if (componentKey != null) |
| 1022 | { | 1015 | { |
| 1023 | if (win64) | 1016 | if (win64) |
| 1024 | { | 1017 | { |
| 1025 | if (this.Core.CurrentPlatform == Platform.IA64) | 1018 | if (this.Context.Platform == Platform.IA64) |
| 1026 | { | 1019 | { |
| 1027 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1020 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
| 1028 | } | 1021 | } |
| 1029 | else | 1022 | else |
| 1030 | { | 1023 | { |
| 1031 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1024 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
| 1032 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1025 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
| 1033 | } | 1026 | } |
| 1034 | } | 1027 | } |
| 1035 | else | 1028 | else |
| 1036 | { | 1029 | { |
| 1037 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1030 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
| 1038 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1031 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
| 1039 | } | 1032 | } |
| 1040 | } | 1033 | } |
| 1041 | } | 1034 | } |
| @@ -1046,9 +1039,9 @@ namespace WixToolset.Extensions | |||
| 1046 | /// <param name="node">Element to parse.</param> | 1039 | /// <param name="node">Element to parse.</param> |
| 1047 | /// <param name="componentKey">Identifier of parent component.</param> | 1040 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1048 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1041 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
| 1049 | private void ParseComPlusApplicationRoleElement(XElement node, string componentKey, string applicationKey) | 1042 | private void ParseComPlusApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationKey) |
| 1050 | { | 1043 | { |
| 1051 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1044 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1052 | 1045 | ||
| 1053 | string key = null; | 1046 | string key = null; |
| 1054 | string name = null; | 1047 | string name = null; |
| @@ -1062,40 +1055,40 @@ namespace WixToolset.Extensions | |||
| 1062 | switch (attrib.Name.LocalName) | 1055 | switch (attrib.Name.LocalName) |
| 1063 | { | 1056 | { |
| 1064 | case "Id": | 1057 | case "Id": |
| 1065 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1058 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1066 | break; | 1059 | break; |
| 1067 | case "Application": | 1060 | case "Application": |
| 1068 | if (null != applicationKey) | 1061 | if (null != applicationKey) |
| 1069 | { | 1062 | { |
| 1070 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1063 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1071 | } | 1064 | } |
| 1072 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1065 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1073 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1066 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
| 1074 | break; | 1067 | break; |
| 1075 | case "Name": | 1068 | case "Name": |
| 1076 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1069 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1077 | break; | 1070 | break; |
| 1078 | case "Description": | 1071 | case "Description": |
| 1079 | if (null == componentKey) | 1072 | if (null == componentKey) |
| 1080 | { | 1073 | { |
| 1081 | this.Core.OnMessage(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); | 1074 | this.Messaging.Write(ComPlusErrors.IllegalAttributeWithoutComponent(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName)); |
| 1082 | } | 1075 | } |
| 1083 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1076 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1084 | break; | 1077 | break; |
| 1085 | default: | 1078 | default: |
| 1086 | this.Core.UnexpectedAttribute(node, attrib); | 1079 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1087 | break; | 1080 | break; |
| 1088 | } | 1081 | } |
| 1089 | } | 1082 | } |
| 1090 | else | 1083 | else |
| 1091 | { | 1084 | { |
| 1092 | this.Core.ParseExtensionAttribute(node, attrib); | 1085 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1093 | } | 1086 | } |
| 1094 | } | 1087 | } |
| 1095 | 1088 | ||
| 1096 | if (null == applicationKey) | 1089 | if (null == applicationKey) |
| 1097 | { | 1090 | { |
| 1098 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); | 1091 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application")); |
| 1099 | } | 1092 | } |
| 1100 | 1093 | ||
| 1101 | foreach (XElement child in node.Elements()) | 1094 | foreach (XElement child in node.Elements()) |
| @@ -1105,35 +1098,35 @@ namespace WixToolset.Extensions | |||
| 1105 | switch (child.Name.LocalName) | 1098 | switch (child.Name.LocalName) |
| 1106 | { | 1099 | { |
| 1107 | case "ComPlusUserInApplicationRole": | 1100 | case "ComPlusUserInApplicationRole": |
| 1108 | this.ParseComPlusUserInApplicationRoleElement(child, componentKey, key); | 1101 | this.ParseComPlusUserInApplicationRoleElement(intermediate, section, child, componentKey, key); |
| 1109 | break; | 1102 | break; |
| 1110 | case "ComPlusGroupInApplicationRole": | 1103 | case "ComPlusGroupInApplicationRole": |
| 1111 | this.ParseComPlusGroupInApplicationRoleElement(child, componentKey, key); | 1104 | this.ParseComPlusGroupInApplicationRoleElement(intermediate, section, child, componentKey, key); |
| 1112 | break; | 1105 | break; |
| 1113 | default: | 1106 | default: |
| 1114 | this.Core.UnexpectedElement(node, child); | 1107 | this.ParseHelper.UnexpectedElement(node, child); |
| 1115 | break; | 1108 | break; |
| 1116 | } | 1109 | } |
| 1117 | } | 1110 | } |
| 1118 | else | 1111 | else |
| 1119 | { | 1112 | { |
| 1120 | this.Core.ParseExtensionElement(node, child); | 1113 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1121 | } | 1114 | } |
| 1122 | } | 1115 | } |
| 1123 | 1116 | ||
| 1124 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRole"); | 1117 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRole"); |
| 1125 | row[0] = key; | 1118 | row.Set(0, key); |
| 1126 | row[1] = applicationKey; | 1119 | row.Set(1, applicationKey); |
| 1127 | row[2] = componentKey; | 1120 | row.Set(2, componentKey); |
| 1128 | row[3] = name; | 1121 | row.Set(3, name); |
| 1129 | 1122 | ||
| 1130 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1123 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 1131 | while (propertiesEnumerator.MoveNext()) | 1124 | while (propertiesEnumerator.MoveNext()) |
| 1132 | { | 1125 | { |
| 1133 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusApplicationRoleProperty"); | 1126 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusApplicationRoleProperty"); |
| 1134 | propertyRow[0] = key; | 1127 | propertyRow.Set(0, key); |
| 1135 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1128 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 1136 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1129 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 1137 | } | 1130 | } |
| 1138 | } | 1131 | } |
| 1139 | 1132 | ||
| @@ -1143,9 +1136,9 @@ namespace WixToolset.Extensions | |||
| 1143 | /// <param name="node">Element to parse.</param> | 1136 | /// <param name="node">Element to parse.</param> |
| 1144 | /// <param name="componentKey">Identifier of parent component.</param> | 1137 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1145 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1138 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
| 1146 | private void ParseComPlusUserInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1139 | private void ParseComPlusUserInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
| 1147 | { | 1140 | { |
| 1148 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1141 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1149 | 1142 | ||
| 1150 | string key = null; | 1143 | string key = null; |
| 1151 | string user = null; | 1144 | string user = null; |
| @@ -1157,41 +1150,41 @@ namespace WixToolset.Extensions | |||
| 1157 | switch (attrib.Name.LocalName) | 1150 | switch (attrib.Name.LocalName) |
| 1158 | { | 1151 | { |
| 1159 | case "Id": | 1152 | case "Id": |
| 1160 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1153 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1161 | break; | 1154 | break; |
| 1162 | case "ApplicationRole": | 1155 | case "ApplicationRole": |
| 1163 | if (null != applicationRoleKey) | 1156 | if (null != applicationRoleKey) |
| 1164 | { | 1157 | { |
| 1165 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1158 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1166 | } | 1159 | } |
| 1167 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1160 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1168 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1161 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
| 1169 | break; | 1162 | break; |
| 1170 | case "User": | 1163 | case "User": |
| 1171 | user = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1164 | user = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1172 | this.Core.CreateSimpleReference(sourceLineNumbers, "User", user); | 1165 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "User", user); |
| 1173 | break; | 1166 | break; |
| 1174 | default: | 1167 | default: |
| 1175 | this.Core.UnexpectedAttribute(node, attrib); | 1168 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1176 | break; | 1169 | break; |
| 1177 | } | 1170 | } |
| 1178 | } | 1171 | } |
| 1179 | else | 1172 | else |
| 1180 | { | 1173 | { |
| 1181 | this.Core.ParseExtensionAttribute(node, attrib); | 1174 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1182 | } | 1175 | } |
| 1183 | } | 1176 | } |
| 1184 | 1177 | ||
| 1185 | if (null == applicationRoleKey) | 1178 | if (null == applicationRoleKey) |
| 1186 | { | 1179 | { |
| 1187 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1180 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
| 1188 | } | 1181 | } |
| 1189 | 1182 | ||
| 1190 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusUserInApplicationRole"); | 1183 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusUserInApplicationRole"); |
| 1191 | row[0] = key; | 1184 | row.Set(0, key); |
| 1192 | row[1] = applicationRoleKey; | 1185 | row.Set(1, applicationRoleKey); |
| 1193 | row[2] = componentKey; | 1186 | row.Set(2, componentKey); |
| 1194 | row[3] = user; | 1187 | row.Set(3, user); |
| 1195 | } | 1188 | } |
| 1196 | 1189 | ||
| 1197 | /// <summary> | 1190 | /// <summary> |
| @@ -1200,9 +1193,9 @@ namespace WixToolset.Extensions | |||
| 1200 | /// <param name="node">Element to parse.</param> | 1193 | /// <param name="node">Element to parse.</param> |
| 1201 | /// <param name="componentKey">Identifier of parent component.</param> | 1194 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1202 | /// <param name="applicationKey">Optional identifier of parent application role.</param> | 1195 | /// <param name="applicationKey">Optional identifier of parent application role.</param> |
| 1203 | private void ParseComPlusGroupInApplicationRoleElement(XElement node, string componentKey, string applicationRoleKey) | 1196 | private void ParseComPlusGroupInApplicationRoleElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string applicationRoleKey) |
| 1204 | { | 1197 | { |
| 1205 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1198 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1206 | 1199 | ||
| 1207 | string key = null; | 1200 | string key = null; |
| 1208 | string group = null; | 1201 | string group = null; |
| @@ -1214,41 +1207,41 @@ namespace WixToolset.Extensions | |||
| 1214 | switch (attrib.Name.LocalName) | 1207 | switch (attrib.Name.LocalName) |
| 1215 | { | 1208 | { |
| 1216 | case "Id": | 1209 | case "Id": |
| 1217 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1210 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1218 | break; | 1211 | break; |
| 1219 | case "ApplicationRole": | 1212 | case "ApplicationRole": |
| 1220 | if (null != applicationRoleKey) | 1213 | if (null != applicationRoleKey) |
| 1221 | { | 1214 | { |
| 1222 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1215 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1223 | } | 1216 | } |
| 1224 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1217 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1225 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); | 1218 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplicationRole", applicationRoleKey); |
| 1226 | break; | 1219 | break; |
| 1227 | case "Group": | 1220 | case "Group": |
| 1228 | group = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1221 | group = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1229 | this.Core.CreateSimpleReference(sourceLineNumbers, "Group", group); | 1222 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "Group", group); |
| 1230 | break; | 1223 | break; |
| 1231 | default: | 1224 | default: |
| 1232 | this.Core.UnexpectedAttribute(node, attrib); | 1225 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1233 | break; | 1226 | break; |
| 1234 | } | 1227 | } |
| 1235 | } | 1228 | } |
| 1236 | else | 1229 | else |
| 1237 | { | 1230 | { |
| 1238 | this.Core.ParseExtensionAttribute(node, attrib); | 1231 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1239 | } | 1232 | } |
| 1240 | } | 1233 | } |
| 1241 | 1234 | ||
| 1242 | if (null == applicationRoleKey) | 1235 | if (null == applicationRoleKey) |
| 1243 | { | 1236 | { |
| 1244 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); | 1237 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "ApplicationRole")); |
| 1245 | } | 1238 | } |
| 1246 | 1239 | ||
| 1247 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusGroupInApplicationRole"); | 1240 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusGroupInApplicationRole"); |
| 1248 | row[0] = key; | 1241 | row.Set(0, key); |
| 1249 | row[1] = applicationRoleKey; | 1242 | row.Set(1, applicationRoleKey); |
| 1250 | row[2] = componentKey; | 1243 | row.Set(2, componentKey); |
| 1251 | row[3] = group; | 1244 | row.Set(3, group); |
| 1252 | } | 1245 | } |
| 1253 | 1246 | ||
| 1254 | /// <summary> | 1247 | /// <summary> |
| @@ -1257,9 +1250,9 @@ namespace WixToolset.Extensions | |||
| 1257 | /// <param name="node">Element to parse.</param> | 1250 | /// <param name="node">Element to parse.</param> |
| 1258 | /// <param name="componentKey">Identifier of parent component.</param> | 1251 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1259 | /// <param name="applicationKey">Optional identifier of parent application.</param> | 1252 | /// <param name="applicationKey">Optional identifier of parent application.</param> |
| 1260 | private void ParseComPlusAssemblyElement(XElement node, string componentKey, bool win64, string applicationKey) | 1253 | private void ParseComPlusAssemblyElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, bool win64, string applicationKey) |
| 1261 | { | 1254 | { |
| 1262 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1255 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1263 | 1256 | ||
| 1264 | string key = null; | 1257 | string key = null; |
| 1265 | string assemblyName = null; | 1258 | string assemblyName = null; |
| @@ -1277,30 +1270,30 @@ namespace WixToolset.Extensions | |||
| 1277 | switch (attrib.Name.LocalName) | 1270 | switch (attrib.Name.LocalName) |
| 1278 | { | 1271 | { |
| 1279 | case "Id": | 1272 | case "Id": |
| 1280 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1273 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1281 | break; | 1274 | break; |
| 1282 | case "Application": | 1275 | case "Application": |
| 1283 | if (null != applicationKey) | 1276 | if (null != applicationKey) |
| 1284 | { | 1277 | { |
| 1285 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1278 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1286 | } | 1279 | } |
| 1287 | applicationKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1280 | applicationKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1288 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusApplication", applicationKey); | 1281 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusApplication", applicationKey); |
| 1289 | break; | 1282 | break; |
| 1290 | case "AssemblyName": | 1283 | case "AssemblyName": |
| 1291 | assemblyName = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1284 | assemblyName = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1292 | break; | 1285 | break; |
| 1293 | case "DllPath": | 1286 | case "DllPath": |
| 1294 | dllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1287 | dllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1295 | break; | 1288 | break; |
| 1296 | case "TlbPath": | 1289 | case "TlbPath": |
| 1297 | tlbPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1290 | tlbPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1298 | break; | 1291 | break; |
| 1299 | case "PSDllPath": | 1292 | case "PSDllPath": |
| 1300 | psDllPath = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1293 | psDllPath = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1301 | break; | 1294 | break; |
| 1302 | case "Type": | 1295 | case "Type": |
| 1303 | string typeValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1296 | string typeValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1304 | switch (typeValue) | 1297 | switch (typeValue) |
| 1305 | { | 1298 | { |
| 1306 | case ".net": | 1299 | case ".net": |
| @@ -1310,12 +1303,12 @@ namespace WixToolset.Extensions | |||
| 1310 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; | 1303 | attributes &= ~(int)CpiAssemblyAttributes.DotNetAssembly; |
| 1311 | break; | 1304 | break; |
| 1312 | default: | 1305 | default: |
| 1313 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); | 1306 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusAssembly", "Type", typeValue, ".net", "native")); |
| 1314 | break; | 1307 | break; |
| 1315 | } | 1308 | } |
| 1316 | break; | 1309 | break; |
| 1317 | case "EventClass": | 1310 | case "EventClass": |
| 1318 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1311 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
| 1319 | { | 1312 | { |
| 1320 | attributes |= (int)CpiAssemblyAttributes.EventClass; | 1313 | attributes |= (int)CpiAssemblyAttributes.EventClass; |
| 1321 | } | 1314 | } |
| @@ -1325,7 +1318,7 @@ namespace WixToolset.Extensions | |||
| 1325 | } | 1318 | } |
| 1326 | break; | 1319 | break; |
| 1327 | case "DllPathFromGAC": | 1320 | case "DllPathFromGAC": |
| 1328 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1321 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
| 1329 | { | 1322 | { |
| 1330 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; | 1323 | attributes |= (int)CpiAssemblyAttributes.DllPathFromGAC; |
| 1331 | } | 1324 | } |
| @@ -1335,7 +1328,7 @@ namespace WixToolset.Extensions | |||
| 1335 | } | 1328 | } |
| 1336 | break; | 1329 | break; |
| 1337 | case "RegisterInCommit": | 1330 | case "RegisterInCommit": |
| 1338 | if (YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib)) | 1331 | if (YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib)) |
| 1339 | { | 1332 | { |
| 1340 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; | 1333 | attributes |= (int)CpiAssemblyAttributes.RegisterInCommit; |
| 1341 | } | 1334 | } |
| @@ -1345,35 +1338,35 @@ namespace WixToolset.Extensions | |||
| 1345 | } | 1338 | } |
| 1346 | break; | 1339 | break; |
| 1347 | default: | 1340 | default: |
| 1348 | this.Core.UnexpectedAttribute(node, attrib); | 1341 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1349 | break; | 1342 | break; |
| 1350 | } | 1343 | } |
| 1351 | } | 1344 | } |
| 1352 | else | 1345 | else |
| 1353 | { | 1346 | { |
| 1354 | this.Core.ParseExtensionAttribute(node, attrib); | 1347 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1355 | } | 1348 | } |
| 1356 | } | 1349 | } |
| 1357 | 1350 | ||
| 1358 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1351 | if (null == applicationKey && 0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
| 1359 | { | 1352 | { |
| 1360 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); | 1353 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Application", "Type", "native")); |
| 1361 | } | 1354 | } |
| 1362 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) | 1355 | if (null != assemblyName && 0 == (attributes & (int)CpiAssemblyAttributes.DllPathFromGAC)) |
| 1363 | { | 1356 | { |
| 1364 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); | 1357 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithoutOtherValue(sourceLineNumbers, node.Name.LocalName, "AssemblyName", "DllPathFromGAC", "no")); |
| 1365 | } | 1358 | } |
| 1366 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1359 | if (null == tlbPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
| 1367 | { | 1360 | { |
| 1368 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); | 1361 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "TlbPath", "Type", ".net")); |
| 1369 | } | 1362 | } |
| 1370 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1363 | if (null != psDllPath && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
| 1371 | { | 1364 | { |
| 1372 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); | 1365 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "PSDllPath", "Type", ".net")); |
| 1373 | } | 1366 | } |
| 1374 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) | 1367 | if (0 != (attributes & (int)CpiAssemblyAttributes.EventClass) && 0 != (attributes & (int)CpiAssemblyAttributes.DotNetAssembly)) |
| 1375 | { | 1368 | { |
| 1376 | this.Core.OnMessage(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); | 1369 | this.Messaging.Write(ComPlusErrors.UnexpectedAttributeWithOtherValue(sourceLineNumbers, node.Name.LocalName, "EventClass", "yes", "Type", ".net")); |
| 1377 | } | 1370 | } |
| 1378 | 1371 | ||
| 1379 | foreach (XElement child in node.Elements()) | 1372 | foreach (XElement child in node.Elements()) |
| @@ -1383,54 +1376,54 @@ namespace WixToolset.Extensions | |||
| 1383 | switch (child.Name.LocalName) | 1376 | switch (child.Name.LocalName) |
| 1384 | { | 1377 | { |
| 1385 | case "ComPlusAssemblyDependency": | 1378 | case "ComPlusAssemblyDependency": |
| 1386 | this.ParseComPlusAssemblyDependencyElement(child, key); | 1379 | this.ParseComPlusAssemblyDependencyElement(intermediate, section, child, key); |
| 1387 | break; | 1380 | break; |
| 1388 | case "ComPlusComponent": | 1381 | case "ComPlusComponent": |
| 1389 | this.ParseComPlusComponentElement(child, componentKey, key); | 1382 | this.ParseComPlusComponentElement(intermediate, section, child, componentKey, key); |
| 1390 | hasComponents = true; | 1383 | hasComponents = true; |
| 1391 | break; | 1384 | break; |
| 1392 | default: | 1385 | default: |
| 1393 | this.Core.UnexpectedElement(node, child); | 1386 | this.ParseHelper.UnexpectedElement(node, child); |
| 1394 | break; | 1387 | break; |
| 1395 | } | 1388 | } |
| 1396 | } | 1389 | } |
| 1397 | else | 1390 | else |
| 1398 | { | 1391 | { |
| 1399 | this.Core.ParseExtensionElement(node, child); | 1392 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1400 | } | 1393 | } |
| 1401 | } | 1394 | } |
| 1402 | 1395 | ||
| 1403 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) | 1396 | if (0 == (attributes & (int)CpiAssemblyAttributes.DotNetAssembly) && !hasComponents) |
| 1404 | { | 1397 | { |
| 1405 | this.Core.OnMessage(ComPlusWarnings.MissingComponents(sourceLineNumbers)); | 1398 | this.Messaging.Write(ComPlusWarnings.MissingComponents(sourceLineNumbers)); |
| 1406 | } | 1399 | } |
| 1407 | 1400 | ||
| 1408 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssembly"); | 1401 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssembly"); |
| 1409 | row[0] = key; | 1402 | row.Set(0, key); |
| 1410 | row[1] = applicationKey; | 1403 | row.Set(1, applicationKey); |
| 1411 | row[2] = componentKey; | 1404 | row.Set(2, componentKey); |
| 1412 | row[3] = assemblyName; | 1405 | row.Set(3, assemblyName); |
| 1413 | row[4] = dllPath; | 1406 | row.Set(4, dllPath); |
| 1414 | row[5] = tlbPath; | 1407 | row.Set(5, tlbPath); |
| 1415 | row[6] = psDllPath; | 1408 | row.Set(6, psDllPath); |
| 1416 | row[7] = attributes; | 1409 | row.Set(7, attributes); |
| 1417 | 1410 | ||
| 1418 | if (win64) | 1411 | if (win64) |
| 1419 | { | 1412 | { |
| 1420 | if (this.Core.CurrentPlatform == Platform.IA64) | 1413 | if (this.Context.Platform == Platform.IA64) |
| 1421 | { | 1414 | { |
| 1422 | this.Core.OnMessage(WixErrors.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); | 1415 | this.Messaging.Write(ErrorMessages.UnsupportedPlatformForElement(sourceLineNumbers, "ia64", node.Name.LocalName)); |
| 1423 | } | 1416 | } |
| 1424 | else | 1417 | else |
| 1425 | { | 1418 | { |
| 1426 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); | 1419 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall_x64"); |
| 1427 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); | 1420 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall_x64"); |
| 1428 | } | 1421 | } |
| 1429 | } | 1422 | } |
| 1430 | else | 1423 | else |
| 1431 | { | 1424 | { |
| 1432 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); | 1425 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusInstall"); |
| 1433 | this.Core.CreateSimpleReference(sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); | 1426 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "CustomAction", "ConfigureComPlusUninstall"); |
| 1434 | } | 1427 | } |
| 1435 | } | 1428 | } |
| 1436 | 1429 | ||
| @@ -1439,9 +1432,9 @@ namespace WixToolset.Extensions | |||
| 1439 | /// </summary> | 1432 | /// </summary> |
| 1440 | /// <param name="node">Element to parse.</param> | 1433 | /// <param name="node">Element to parse.</param> |
| 1441 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1434 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
| 1442 | private void ParseComPlusAssemblyDependencyElement(XElement node, string assemblyKey) | 1435 | private void ParseComPlusAssemblyDependencyElement(Intermediate intermediate, IntermediateSection section, XElement node, string assemblyKey) |
| 1443 | { | 1436 | { |
| 1444 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1437 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1445 | 1438 | ||
| 1446 | string requiredAssemblyKey = null; | 1439 | string requiredAssemblyKey = null; |
| 1447 | 1440 | ||
| @@ -1452,22 +1445,22 @@ namespace WixToolset.Extensions | |||
| 1452 | switch (attrib.Name.LocalName) | 1445 | switch (attrib.Name.LocalName) |
| 1453 | { | 1446 | { |
| 1454 | case "RequiredAssembly": | 1447 | case "RequiredAssembly": |
| 1455 | requiredAssemblyKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1448 | requiredAssemblyKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1456 | break; | 1449 | break; |
| 1457 | default: | 1450 | default: |
| 1458 | this.Core.UnexpectedAttribute(node, attrib); | 1451 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1459 | break; | 1452 | break; |
| 1460 | } | 1453 | } |
| 1461 | } | 1454 | } |
| 1462 | else | 1455 | else |
| 1463 | { | 1456 | { |
| 1464 | this.Core.ParseExtensionAttribute(node, attrib); | 1457 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1465 | } | 1458 | } |
| 1466 | } | 1459 | } |
| 1467 | 1460 | ||
| 1468 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusAssemblyDependency"); | 1461 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusAssemblyDependency"); |
| 1469 | row[0] = assemblyKey; | 1462 | row.Set(0, assemblyKey); |
| 1470 | row[1] = requiredAssemblyKey; | 1463 | row.Set(1, requiredAssemblyKey); |
| 1471 | } | 1464 | } |
| 1472 | 1465 | ||
| 1473 | /// <summary> | 1466 | /// <summary> |
| @@ -1476,9 +1469,9 @@ namespace WixToolset.Extensions | |||
| 1476 | /// <param name="node">Element to parse.</param> | 1469 | /// <param name="node">Element to parse.</param> |
| 1477 | /// <param name="componentKey">Identifier of parent component.</param> | 1470 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1478 | /// <param name="assemblyKey">Identifier of parent assembly.</param> | 1471 | /// <param name="assemblyKey">Identifier of parent assembly.</param> |
| 1479 | private void ParseComPlusComponentElement(XElement node, string componentKey, string assemblyKey) | 1472 | private void ParseComPlusComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string assemblyKey) |
| 1480 | { | 1473 | { |
| 1481 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1474 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1482 | 1475 | ||
| 1483 | string key = null; | 1476 | string key = null; |
| 1484 | string clsid = null; | 1477 | string clsid = null; |
| @@ -1492,94 +1485,94 @@ namespace WixToolset.Extensions | |||
| 1492 | switch (attrib.Name.LocalName) | 1485 | switch (attrib.Name.LocalName) |
| 1493 | { | 1486 | { |
| 1494 | case "Id": | 1487 | case "Id": |
| 1495 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1488 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1496 | break; | 1489 | break; |
| 1497 | case "CLSID": | 1490 | case "CLSID": |
| 1498 | clsid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1491 | clsid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
| 1499 | break; | 1492 | break; |
| 1500 | case "AllowInprocSubscribers": | 1493 | case "AllowInprocSubscribers": |
| 1501 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1494 | properties["AllowInprocSubscribers"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1502 | break; | 1495 | break; |
| 1503 | case "ComponentAccessChecksEnabled": | 1496 | case "ComponentAccessChecksEnabled": |
| 1504 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1497 | properties["ComponentAccessChecksEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1505 | break; | 1498 | break; |
| 1506 | case "ComponentTransactionTimeout": | 1499 | case "ComponentTransactionTimeout": |
| 1507 | properties["ComponentTransactionTimeout"] = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); | 1500 | properties["ComponentTransactionTimeout"] = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, 3600).ToString(); |
| 1508 | break; | 1501 | break; |
| 1509 | case "ComponentTransactionTimeoutEnabled": | 1502 | case "ComponentTransactionTimeoutEnabled": |
| 1510 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1503 | properties["ComponentTransactionTimeoutEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1511 | break; | 1504 | break; |
| 1512 | case "COMTIIntrinsics": | 1505 | case "COMTIIntrinsics": |
| 1513 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1506 | properties["COMTIIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1514 | break; | 1507 | break; |
| 1515 | case "ConstructionEnabled": | 1508 | case "ConstructionEnabled": |
| 1516 | properties["ConstructionEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1509 | properties["ConstructionEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1517 | break; | 1510 | break; |
| 1518 | case "ConstructorString": | 1511 | case "ConstructorString": |
| 1519 | properties["ConstructorString"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1512 | properties["ConstructorString"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1520 | break; | 1513 | break; |
| 1521 | case "CreationTimeout": | 1514 | case "CreationTimeout": |
| 1522 | properties["CreationTimeout"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1515 | properties["CreationTimeout"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1523 | break; | 1516 | break; |
| 1524 | case "Description": | 1517 | case "Description": |
| 1525 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1518 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1526 | break; | 1519 | break; |
| 1527 | case "EventTrackingEnabled": | 1520 | case "EventTrackingEnabled": |
| 1528 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1521 | properties["EventTrackingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1529 | break; | 1522 | break; |
| 1530 | case "ExceptionClass": | 1523 | case "ExceptionClass": |
| 1531 | properties["ExceptionClass"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1524 | properties["ExceptionClass"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1532 | break; | 1525 | break; |
| 1533 | case "FireInParallel": | 1526 | case "FireInParallel": |
| 1534 | properties["FireInParallel"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1527 | properties["FireInParallel"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1535 | break; | 1528 | break; |
| 1536 | case "IISIntrinsics": | 1529 | case "IISIntrinsics": |
| 1537 | properties["IISIntrinsics"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1530 | properties["IISIntrinsics"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1538 | break; | 1531 | break; |
| 1539 | case "InitializesServerApplication": | 1532 | case "InitializesServerApplication": |
| 1540 | properties["InitializesServerApplication"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1533 | properties["InitializesServerApplication"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1541 | break; | 1534 | break; |
| 1542 | case "IsEnabled": | 1535 | case "IsEnabled": |
| 1543 | properties["IsEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1536 | properties["IsEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1544 | break; | 1537 | break; |
| 1545 | case "IsPrivateComponent": | 1538 | case "IsPrivateComponent": |
| 1546 | properties["IsPrivateComponent"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1539 | properties["IsPrivateComponent"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1547 | break; | 1540 | break; |
| 1548 | case "JustInTimeActivation": | 1541 | case "JustInTimeActivation": |
| 1549 | properties["JustInTimeActivation"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1542 | properties["JustInTimeActivation"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1550 | break; | 1543 | break; |
| 1551 | case "LoadBalancingSupported": | 1544 | case "LoadBalancingSupported": |
| 1552 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1545 | properties["LoadBalancingSupported"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1553 | break; | 1546 | break; |
| 1554 | case "MaxPoolSize": | 1547 | case "MaxPoolSize": |
| 1555 | properties["MaxPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1548 | properties["MaxPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1556 | break; | 1549 | break; |
| 1557 | case "MinPoolSize": | 1550 | case "MinPoolSize": |
| 1558 | properties["MinPoolSize"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1551 | properties["MinPoolSize"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1559 | break; | 1552 | break; |
| 1560 | case "MultiInterfacePublisherFilterCLSID": | 1553 | case "MultiInterfacePublisherFilterCLSID": |
| 1561 | properties["MultiInterfacePublisherFilterCLSID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1554 | properties["MultiInterfacePublisherFilterCLSID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1562 | break; | 1555 | break; |
| 1563 | case "MustRunInClientContext": | 1556 | case "MustRunInClientContext": |
| 1564 | properties["MustRunInClientContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1557 | properties["MustRunInClientContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1565 | break; | 1558 | break; |
| 1566 | case "MustRunInDefaultContext": | 1559 | case "MustRunInDefaultContext": |
| 1567 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1560 | properties["MustRunInDefaultContext"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1568 | break; | 1561 | break; |
| 1569 | case "ObjectPoolingEnabled": | 1562 | case "ObjectPoolingEnabled": |
| 1570 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1563 | properties["ObjectPoolingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1571 | break; | 1564 | break; |
| 1572 | case "PublisherID": | 1565 | case "PublisherID": |
| 1573 | properties["PublisherID"] = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 1566 | properties["PublisherID"] = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
| 1574 | break; | 1567 | break; |
| 1575 | case "SoapAssemblyName": | 1568 | case "SoapAssemblyName": |
| 1576 | properties["SoapAssemblyName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1569 | properties["SoapAssemblyName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1577 | break; | 1570 | break; |
| 1578 | case "SoapTypeName": | 1571 | case "SoapTypeName": |
| 1579 | properties["SoapTypeName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1572 | properties["SoapTypeName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1580 | break; | 1573 | break; |
| 1581 | case "Synchronization": | 1574 | case "Synchronization": |
| 1582 | string synchronizationValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1575 | string synchronizationValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1583 | switch (synchronizationValue) | 1576 | switch (synchronizationValue) |
| 1584 | { | 1577 | { |
| 1585 | case "ignored": | 1578 | case "ignored": |
| @@ -1598,12 +1591,12 @@ namespace WixToolset.Extensions | |||
| 1598 | properties["Synchronization"] = "4"; | 1591 | properties["Synchronization"] = "4"; |
| 1599 | break; | 1592 | break; |
| 1600 | default: | 1593 | default: |
| 1601 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); | 1594 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Synchronization", synchronizationValue, "ignored", "none", "supported", "required", "requiresNew")); |
| 1602 | break; | 1595 | break; |
| 1603 | } | 1596 | } |
| 1604 | break; | 1597 | break; |
| 1605 | case "Transaction": | 1598 | case "Transaction": |
| 1606 | string transactionValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1599 | string transactionValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1607 | switch (transactionValue) | 1600 | switch (transactionValue) |
| 1608 | { | 1601 | { |
| 1609 | case "ignored": | 1602 | case "ignored": |
| @@ -1622,12 +1615,12 @@ namespace WixToolset.Extensions | |||
| 1622 | properties["Transaction"] = "4"; | 1615 | properties["Transaction"] = "4"; |
| 1623 | break; | 1616 | break; |
| 1624 | default: | 1617 | default: |
| 1625 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); | 1618 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "Transaction", transactionValue, "ignored", "none", "supported", "required", "requiresNew")); |
| 1626 | break; | 1619 | break; |
| 1627 | } | 1620 | } |
| 1628 | break; | 1621 | break; |
| 1629 | case "TxIsolationLevel": | 1622 | case "TxIsolationLevel": |
| 1630 | string txIsolationLevelValue = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1623 | string txIsolationLevelValue = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1631 | switch (txIsolationLevelValue) | 1624 | switch (txIsolationLevelValue) |
| 1632 | { | 1625 | { |
| 1633 | case "any": | 1626 | case "any": |
| @@ -1646,18 +1639,18 @@ namespace WixToolset.Extensions | |||
| 1646 | properties["TxIsolationLevel"] = "4"; | 1639 | properties["TxIsolationLevel"] = "4"; |
| 1647 | break; | 1640 | break; |
| 1648 | default: | 1641 | default: |
| 1649 | this.Core.OnMessage(WixErrors.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); | 1642 | this.Messaging.Write(ErrorMessages.IllegalAttributeValue(sourceLineNumbers, "ComPlusComponent", "TxIsolationLevel", txIsolationLevelValue, "any", "readUnCommitted", "readCommitted", "repeatableRead", "serializable")); |
| 1650 | break; | 1643 | break; |
| 1651 | } | 1644 | } |
| 1652 | break; | 1645 | break; |
| 1653 | default: | 1646 | default: |
| 1654 | this.Core.UnexpectedAttribute(node, attrib); | 1647 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1655 | break; | 1648 | break; |
| 1656 | } | 1649 | } |
| 1657 | } | 1650 | } |
| 1658 | else | 1651 | else |
| 1659 | { | 1652 | { |
| 1660 | this.Core.ParseExtensionAttribute(node, attrib); | 1653 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1661 | } | 1654 | } |
| 1662 | } | 1655 | } |
| 1663 | 1656 | ||
| @@ -1668,37 +1661,37 @@ namespace WixToolset.Extensions | |||
| 1668 | switch (child.Name.LocalName) | 1661 | switch (child.Name.LocalName) |
| 1669 | { | 1662 | { |
| 1670 | case "ComPlusRoleForComponent": | 1663 | case "ComPlusRoleForComponent": |
| 1671 | this.ParseComPlusRoleForComponentElement(child, componentKey, key); | 1664 | this.ParseComPlusRoleForComponentElement(intermediate, section, child, componentKey, key); |
| 1672 | break; | 1665 | break; |
| 1673 | case "ComPlusInterface": | 1666 | case "ComPlusInterface": |
| 1674 | this.ParseComPlusInterfaceElement(child, componentKey, key); | 1667 | this.ParseComPlusInterfaceElement(intermediate, section, child, componentKey, key); |
| 1675 | break; | 1668 | break; |
| 1676 | case "ComPlusSubscription": | 1669 | case "ComPlusSubscription": |
| 1677 | this.ParseComPlusSubscriptionElement(child, componentKey, key); | 1670 | this.ParseComPlusSubscriptionElement(intermediate, section, child, componentKey, key); |
| 1678 | break; | 1671 | break; |
| 1679 | default: | 1672 | default: |
| 1680 | this.Core.UnexpectedElement(node, child); | 1673 | this.ParseHelper.UnexpectedElement(node, child); |
| 1681 | break; | 1674 | break; |
| 1682 | } | 1675 | } |
| 1683 | } | 1676 | } |
| 1684 | else | 1677 | else |
| 1685 | { | 1678 | { |
| 1686 | this.Core.ParseExtensionElement(node, child); | 1679 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1687 | } | 1680 | } |
| 1688 | } | 1681 | } |
| 1689 | 1682 | ||
| 1690 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponent"); | 1683 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponent"); |
| 1691 | row[0] = key; | 1684 | row.Set(0, key); |
| 1692 | row[1] = assemblyKey; | 1685 | row.Set(1, assemblyKey); |
| 1693 | row[2] = clsid; | 1686 | row.Set(2, clsid); |
| 1694 | 1687 | ||
| 1695 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1688 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 1696 | while (propertiesEnumerator.MoveNext()) | 1689 | while (propertiesEnumerator.MoveNext()) |
| 1697 | { | 1690 | { |
| 1698 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusComponentProperty"); | 1691 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusComponentProperty"); |
| 1699 | propertyRow[0] = key; | 1692 | propertyRow.Set(0, key); |
| 1700 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1693 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 1701 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1694 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 1702 | } | 1695 | } |
| 1703 | } | 1696 | } |
| 1704 | 1697 | ||
| @@ -1708,9 +1701,9 @@ namespace WixToolset.Extensions | |||
| 1708 | /// <param name="node">Element to parse.</param> | 1701 | /// <param name="node">Element to parse.</param> |
| 1709 | /// <param name="componentKey">Identifier of parent component.</param> | 1702 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1710 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1703 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
| 1711 | private void ParseComPlusRoleForComponentElement(XElement node, string componentKey, string cpcomponentKey) | 1704 | private void ParseComPlusRoleForComponentElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
| 1712 | { | 1705 | { |
| 1713 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1706 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1714 | 1707 | ||
| 1715 | string key = null; | 1708 | string key = null; |
| 1716 | string applicationRoleKey = null; | 1709 | string applicationRoleKey = null; |
| @@ -1722,40 +1715,40 @@ namespace WixToolset.Extensions | |||
| 1722 | switch (attrib.Name.LocalName) | 1715 | switch (attrib.Name.LocalName) |
| 1723 | { | 1716 | { |
| 1724 | case "Id": | 1717 | case "Id": |
| 1725 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1718 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1726 | break; | 1719 | break; |
| 1727 | case "Component": | 1720 | case "Component": |
| 1728 | if (null != cpcomponentKey) | 1721 | if (null != cpcomponentKey) |
| 1729 | { | 1722 | { |
| 1730 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1723 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1731 | } | 1724 | } |
| 1732 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1725 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1733 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 1726 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
| 1734 | break; | 1727 | break; |
| 1735 | case "ApplicationRole": | 1728 | case "ApplicationRole": |
| 1736 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1729 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1737 | break; | 1730 | break; |
| 1738 | default: | 1731 | default: |
| 1739 | this.Core.UnexpectedAttribute(node, attrib); | 1732 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1740 | break; | 1733 | break; |
| 1741 | } | 1734 | } |
| 1742 | } | 1735 | } |
| 1743 | else | 1736 | else |
| 1744 | { | 1737 | { |
| 1745 | this.Core.ParseExtensionAttribute(node, attrib); | 1738 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1746 | } | 1739 | } |
| 1747 | } | 1740 | } |
| 1748 | 1741 | ||
| 1749 | if (null == cpcomponentKey) | 1742 | if (null == cpcomponentKey) |
| 1750 | { | 1743 | { |
| 1751 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 1744 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
| 1752 | } | 1745 | } |
| 1753 | 1746 | ||
| 1754 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForComponent"); | 1747 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForComponent"); |
| 1755 | row[0] = key; | 1748 | row.Set(0, key); |
| 1756 | row[1] = cpcomponentKey; | 1749 | row.Set(1, cpcomponentKey); |
| 1757 | row[2] = applicationRoleKey; | 1750 | row.Set(2, applicationRoleKey); |
| 1758 | row[3] = componentKey; | 1751 | row.Set(3, componentKey); |
| 1759 | } | 1752 | } |
| 1760 | 1753 | ||
| 1761 | /// <summary> | 1754 | /// <summary> |
| @@ -1764,9 +1757,9 @@ namespace WixToolset.Extensions | |||
| 1764 | /// <param name="node">Element to parse.</param> | 1757 | /// <param name="node">Element to parse.</param> |
| 1765 | /// <param name="componentKey">Identifier of parent component.</param> | 1758 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1766 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 1759 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
| 1767 | private void ParseComPlusInterfaceElement(XElement node, string componentKey, string cpcomponentKey) | 1760 | private void ParseComPlusInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
| 1768 | { | 1761 | { |
| 1769 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1762 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1770 | 1763 | ||
| 1771 | // parse attributes | 1764 | // parse attributes |
| 1772 | string key = null; | 1765 | string key = null; |
| @@ -1781,25 +1774,25 @@ namespace WixToolset.Extensions | |||
| 1781 | switch (attrib.Name.LocalName) | 1774 | switch (attrib.Name.LocalName) |
| 1782 | { | 1775 | { |
| 1783 | case "Id": | 1776 | case "Id": |
| 1784 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1777 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1785 | break; | 1778 | break; |
| 1786 | case "IID": | 1779 | case "IID": |
| 1787 | iid = "{" + this.Core.GetAttributeValue(sourceLineNumbers, attrib) + "}"; | 1780 | iid = "{" + this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib) + "}"; |
| 1788 | break; | 1781 | break; |
| 1789 | case "Description": | 1782 | case "Description": |
| 1790 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1783 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1791 | break; | 1784 | break; |
| 1792 | case "QueuingEnabled": | 1785 | case "QueuingEnabled": |
| 1793 | properties["QueuingEnabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1786 | properties["QueuingEnabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1794 | break; | 1787 | break; |
| 1795 | default: | 1788 | default: |
| 1796 | this.Core.UnexpectedAttribute(node, attrib); | 1789 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1797 | break; | 1790 | break; |
| 1798 | } | 1791 | } |
| 1799 | } | 1792 | } |
| 1800 | else | 1793 | else |
| 1801 | { | 1794 | { |
| 1802 | this.Core.ParseExtensionAttribute(node, attrib); | 1795 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1803 | } | 1796 | } |
| 1804 | } | 1797 | } |
| 1805 | 1798 | ||
| @@ -1810,34 +1803,34 @@ namespace WixToolset.Extensions | |||
| 1810 | switch (child.Name.LocalName) | 1803 | switch (child.Name.LocalName) |
| 1811 | { | 1804 | { |
| 1812 | case "ComPlusRoleForInterface": | 1805 | case "ComPlusRoleForInterface": |
| 1813 | this.ParseComPlusRoleForInterfaceElement(child, componentKey, key); | 1806 | this.ParseComPlusRoleForInterfaceElement(intermediate, section, child, componentKey, key); |
| 1814 | break; | 1807 | break; |
| 1815 | case "ComPlusMethod": | 1808 | case "ComPlusMethod": |
| 1816 | this.ParseComPlusMethodElement(child, componentKey, key); | 1809 | this.ParseComPlusMethodElement(intermediate, section, child, componentKey, key); |
| 1817 | break; | 1810 | break; |
| 1818 | default: | 1811 | default: |
| 1819 | this.Core.UnexpectedElement(node, child); | 1812 | this.ParseHelper.UnexpectedElement(node, child); |
| 1820 | break; | 1813 | break; |
| 1821 | } | 1814 | } |
| 1822 | } | 1815 | } |
| 1823 | else | 1816 | else |
| 1824 | { | 1817 | { |
| 1825 | this.Core.ParseExtensionElement(node, child); | 1818 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1826 | } | 1819 | } |
| 1827 | } | 1820 | } |
| 1828 | 1821 | ||
| 1829 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterface"); | 1822 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterface"); |
| 1830 | row[0] = key; | 1823 | row.Set(0, key); |
| 1831 | row[1] = cpcomponentKey; | 1824 | row.Set(1, cpcomponentKey); |
| 1832 | row[2] = iid; | 1825 | row.Set(2, iid); |
| 1833 | 1826 | ||
| 1834 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1827 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 1835 | while (propertiesEnumerator.MoveNext()) | 1828 | while (propertiesEnumerator.MoveNext()) |
| 1836 | { | 1829 | { |
| 1837 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusInterfaceProperty"); | 1830 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusInterfaceProperty"); |
| 1838 | propertyRow[0] = key; | 1831 | propertyRow.Set(0, key); |
| 1839 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1832 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 1840 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1833 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 1841 | } | 1834 | } |
| 1842 | } | 1835 | } |
| 1843 | 1836 | ||
| @@ -1847,9 +1840,9 @@ namespace WixToolset.Extensions | |||
| 1847 | /// <param name="node">Element to parse.</param> | 1840 | /// <param name="node">Element to parse.</param> |
| 1848 | /// <param name="componentKey">Identifier of parent component.</param> | 1841 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1849 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1842 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
| 1850 | private void ParseComPlusRoleForInterfaceElement(XElement node, string componentKey, string interfaceKey) | 1843 | private void ParseComPlusRoleForInterfaceElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
| 1851 | { | 1844 | { |
| 1852 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1845 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1853 | 1846 | ||
| 1854 | string key = null; | 1847 | string key = null; |
| 1855 | string applicationRoleKey = null; | 1848 | string applicationRoleKey = null; |
| @@ -1861,40 +1854,40 @@ namespace WixToolset.Extensions | |||
| 1861 | switch (attrib.Name.LocalName) | 1854 | switch (attrib.Name.LocalName) |
| 1862 | { | 1855 | { |
| 1863 | case "Id": | 1856 | case "Id": |
| 1864 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1857 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1865 | break; | 1858 | break; |
| 1866 | case "Interface": | 1859 | case "Interface": |
| 1867 | if (null != interfaceKey) | 1860 | if (null != interfaceKey) |
| 1868 | { | 1861 | { |
| 1869 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 1862 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 1870 | } | 1863 | } |
| 1871 | interfaceKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1864 | interfaceKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1872 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusInterface", interfaceKey); | 1865 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusInterface", interfaceKey); |
| 1873 | break; | 1866 | break; |
| 1874 | case "ApplicationRole": | 1867 | case "ApplicationRole": |
| 1875 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1868 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1876 | break; | 1869 | break; |
| 1877 | default: | 1870 | default: |
| 1878 | this.Core.UnexpectedAttribute(node, attrib); | 1871 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1879 | break; | 1872 | break; |
| 1880 | } | 1873 | } |
| 1881 | } | 1874 | } |
| 1882 | else | 1875 | else |
| 1883 | { | 1876 | { |
| 1884 | this.Core.ParseExtensionAttribute(node, attrib); | 1877 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1885 | } | 1878 | } |
| 1886 | } | 1879 | } |
| 1887 | 1880 | ||
| 1888 | if (null == interfaceKey) | 1881 | if (null == interfaceKey) |
| 1889 | { | 1882 | { |
| 1890 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); | 1883 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Interface")); |
| 1891 | } | 1884 | } |
| 1892 | 1885 | ||
| 1893 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForInterface"); | 1886 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForInterface"); |
| 1894 | row[0] = key; | 1887 | row.Set(0, key); |
| 1895 | row[1] = interfaceKey; | 1888 | row.Set(1, interfaceKey); |
| 1896 | row[2] = applicationRoleKey; | 1889 | row.Set(2, applicationRoleKey); |
| 1897 | row[3] = componentKey; | 1890 | row.Set(3, componentKey); |
| 1898 | } | 1891 | } |
| 1899 | 1892 | ||
| 1900 | /// <summary> | 1893 | /// <summary> |
| @@ -1903,9 +1896,9 @@ namespace WixToolset.Extensions | |||
| 1903 | /// <param name="node">Element to parse.</param> | 1896 | /// <param name="node">Element to parse.</param> |
| 1904 | /// <param name="componentKey">Identifier of parent component.</param> | 1897 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1905 | /// <param name="interfaceKey">Identifier of parent interface.</param> | 1898 | /// <param name="interfaceKey">Identifier of parent interface.</param> |
| 1906 | private void ParseComPlusMethodElement(XElement node, string componentKey, string interfaceKey) | 1899 | private void ParseComPlusMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string interfaceKey) |
| 1907 | { | 1900 | { |
| 1908 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1901 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 1909 | 1902 | ||
| 1910 | string key = null; | 1903 | string key = null; |
| 1911 | int index = CompilerConstants.IntegerNotSet; | 1904 | int index = CompilerConstants.IntegerNotSet; |
| @@ -1920,28 +1913,28 @@ namespace WixToolset.Extensions | |||
| 1920 | switch (attrib.Name.LocalName) | 1913 | switch (attrib.Name.LocalName) |
| 1921 | { | 1914 | { |
| 1922 | case "Id": | 1915 | case "Id": |
| 1923 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 1916 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 1924 | break; | 1917 | break; |
| 1925 | case "Index": | 1918 | case "Index": |
| 1926 | index = this.Core.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); | 1919 | index = this.ParseHelper.GetAttributeIntegerValue(sourceLineNumbers, attrib, 0, int.MaxValue); |
| 1927 | break; | 1920 | break; |
| 1928 | case "Name": | 1921 | case "Name": |
| 1929 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1922 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1930 | break; | 1923 | break; |
| 1931 | case "AutoComplete": | 1924 | case "AutoComplete": |
| 1932 | properties["AutoComplete"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 1925 | properties["AutoComplete"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 1933 | break; | 1926 | break; |
| 1934 | case "Description": | 1927 | case "Description": |
| 1935 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 1928 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 1936 | break; | 1929 | break; |
| 1937 | default: | 1930 | default: |
| 1938 | this.Core.UnexpectedAttribute(node, attrib); | 1931 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 1939 | break; | 1932 | break; |
| 1940 | } | 1933 | } |
| 1941 | } | 1934 | } |
| 1942 | else | 1935 | else |
| 1943 | { | 1936 | { |
| 1944 | this.Core.ParseExtensionAttribute(node, attrib); | 1937 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 1945 | } | 1938 | } |
| 1946 | } | 1939 | } |
| 1947 | 1940 | ||
| @@ -1952,40 +1945,40 @@ namespace WixToolset.Extensions | |||
| 1952 | switch (child.Name.LocalName) | 1945 | switch (child.Name.LocalName) |
| 1953 | { | 1946 | { |
| 1954 | case "ComPlusRoleForMethod": | 1947 | case "ComPlusRoleForMethod": |
| 1955 | this.ParseComPlusRoleForMethodElement(child, componentKey, key); | 1948 | this.ParseComPlusRoleForMethodElement(intermediate, section, child, componentKey, key); |
| 1956 | break; | 1949 | break; |
| 1957 | default: | 1950 | default: |
| 1958 | this.Core.UnexpectedElement(node, child); | 1951 | this.ParseHelper.UnexpectedElement(node, child); |
| 1959 | break; | 1952 | break; |
| 1960 | } | 1953 | } |
| 1961 | } | 1954 | } |
| 1962 | else | 1955 | else |
| 1963 | { | 1956 | { |
| 1964 | this.Core.ParseExtensionElement(node, child); | 1957 | this.ParseHelper.ParseExtensionElement(this.Context.Extensions, intermediate, section, node, child); |
| 1965 | } | 1958 | } |
| 1966 | } | 1959 | } |
| 1967 | 1960 | ||
| 1968 | if (CompilerConstants.IntegerNotSet == index && null == name) | 1961 | if (CompilerConstants.IntegerNotSet == index && null == name) |
| 1969 | { | 1962 | { |
| 1970 | this.Core.OnMessage(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); | 1963 | this.Messaging.Write(ComPlusErrors.RequiredAttribute(sourceLineNumbers, node.Name.LocalName, "Index", "Name")); |
| 1971 | } | 1964 | } |
| 1972 | 1965 | ||
| 1973 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethod"); | 1966 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethod"); |
| 1974 | row[0] = key; | 1967 | row.Set(0, key); |
| 1975 | row[1] = interfaceKey; | 1968 | row.Set(1, interfaceKey); |
| 1976 | if (CompilerConstants.IntegerNotSet != index) | 1969 | if (CompilerConstants.IntegerNotSet != index) |
| 1977 | { | 1970 | { |
| 1978 | row[2] = index; | 1971 | row.Set(2, index); |
| 1979 | } | 1972 | } |
| 1980 | row[3] = name; | 1973 | row.Set(3, name); |
| 1981 | 1974 | ||
| 1982 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 1975 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 1983 | while (propertiesEnumerator.MoveNext()) | 1976 | while (propertiesEnumerator.MoveNext()) |
| 1984 | { | 1977 | { |
| 1985 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusMethodProperty"); | 1978 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusMethodProperty"); |
| 1986 | propertyRow[0] = key; | 1979 | propertyRow.Set(0, key); |
| 1987 | propertyRow[1] = (string)propertiesEnumerator.Key; | 1980 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 1988 | propertyRow[2] = (string)propertiesEnumerator.Value; | 1981 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 1989 | } | 1982 | } |
| 1990 | } | 1983 | } |
| 1991 | 1984 | ||
| @@ -1995,9 +1988,9 @@ namespace WixToolset.Extensions | |||
| 1995 | /// <param name="node">Element to parse.</param> | 1988 | /// <param name="node">Element to parse.</param> |
| 1996 | /// <param name="componentKey">Identifier of parent component.</param> | 1989 | /// <param name="componentKey">Identifier of parent component.</param> |
| 1997 | /// <param name="methodKey">Identifier of parent method.</param> | 1990 | /// <param name="methodKey">Identifier of parent method.</param> |
| 1998 | private void ParseComPlusRoleForMethodElement(XElement node, string componentKey, string methodKey) | 1991 | private void ParseComPlusRoleForMethodElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string methodKey) |
| 1999 | { | 1992 | { |
| 2000 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 1993 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 2001 | 1994 | ||
| 2002 | string key = null; | 1995 | string key = null; |
| 2003 | string applicationRoleKey = null; | 1996 | string applicationRoleKey = null; |
| @@ -2009,40 +2002,40 @@ namespace WixToolset.Extensions | |||
| 2009 | switch (attrib.Name.LocalName) | 2002 | switch (attrib.Name.LocalName) |
| 2010 | { | 2003 | { |
| 2011 | case "Id": | 2004 | case "Id": |
| 2012 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2005 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2013 | break; | 2006 | break; |
| 2014 | case "Method": | 2007 | case "Method": |
| 2015 | if (null != methodKey) | 2008 | if (null != methodKey) |
| 2016 | { | 2009 | { |
| 2017 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2010 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 2018 | } | 2011 | } |
| 2019 | methodKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2012 | methodKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2020 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusMethod", methodKey); | 2013 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusMethod", methodKey); |
| 2021 | break; | 2014 | break; |
| 2022 | case "ApplicationRole": | 2015 | case "ApplicationRole": |
| 2023 | applicationRoleKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2016 | applicationRoleKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2024 | break; | 2017 | break; |
| 2025 | default: | 2018 | default: |
| 2026 | this.Core.UnexpectedAttribute(node, attrib); | 2019 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 2027 | break; | 2020 | break; |
| 2028 | } | 2021 | } |
| 2029 | } | 2022 | } |
| 2030 | else | 2023 | else |
| 2031 | { | 2024 | { |
| 2032 | this.Core.ParseExtensionAttribute(node, attrib); | 2025 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 2033 | } | 2026 | } |
| 2034 | } | 2027 | } |
| 2035 | 2028 | ||
| 2036 | if (null == methodKey) | 2029 | if (null == methodKey) |
| 2037 | { | 2030 | { |
| 2038 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); | 2031 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Method")); |
| 2039 | } | 2032 | } |
| 2040 | 2033 | ||
| 2041 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusRoleForMethod"); | 2034 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusRoleForMethod"); |
| 2042 | row[0] = key; | 2035 | row.Set(0, key); |
| 2043 | row[1] = methodKey; | 2036 | row.Set(1, methodKey); |
| 2044 | row[2] = applicationRoleKey; | 2037 | row.Set(2, applicationRoleKey); |
| 2045 | row[3] = componentKey; | 2038 | row.Set(3, componentKey); |
| 2046 | } | 2039 | } |
| 2047 | 2040 | ||
| 2048 | /// <summary> | 2041 | /// <summary> |
| @@ -2051,9 +2044,9 @@ namespace WixToolset.Extensions | |||
| 2051 | /// <param name="node">Element to parse.</param> | 2044 | /// <param name="node">Element to parse.</param> |
| 2052 | /// <param name="componentKey">Identifier of parent component.</param> | 2045 | /// <param name="componentKey">Identifier of parent component.</param> |
| 2053 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> | 2046 | /// <param name="cpcomponentKey">Identifier of parent COM+ component.</param> |
| 2054 | private void ParseComPlusSubscriptionElement(XElement node, string componentKey, string cpcomponentKey) | 2047 | private void ParseComPlusSubscriptionElement(Intermediate intermediate, IntermediateSection section, XElement node, string componentKey, string cpcomponentKey) |
| 2055 | { | 2048 | { |
| 2056 | SourceLineNumber sourceLineNumbers = Preprocessor.GetSourceLineNumbers(node); | 2049 | SourceLineNumber sourceLineNumbers = this.ParseHelper.GetSourceLineNumbers(node); |
| 2057 | 2050 | ||
| 2058 | string key = null; | 2051 | string key = null; |
| 2059 | string id = null; | 2052 | string id = null; |
| @@ -2070,95 +2063,95 @@ namespace WixToolset.Extensions | |||
| 2070 | switch (attrib.Name.LocalName) | 2063 | switch (attrib.Name.LocalName) |
| 2071 | { | 2064 | { |
| 2072 | case "Id": | 2065 | case "Id": |
| 2073 | key = this.Core.GetAttributeIdentifierValue(sourceLineNumbers, attrib); | 2066 | key = this.ParseHelper.GetAttributeIdentifierValue(sourceLineNumbers, attrib); |
| 2074 | break; | 2067 | break; |
| 2075 | case "Component": | 2068 | case "Component": |
| 2076 | if (null != cpcomponentKey) | 2069 | if (null != cpcomponentKey) |
| 2077 | { | 2070 | { |
| 2078 | this.Core.OnMessage(WixErrors.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); | 2071 | this.Messaging.Write(ErrorMessages.IllegalAttributeWhenNested(sourceLineNumbers, node.Name.LocalName, attrib.Name.LocalName, node.Parent.Name.LocalName)); |
| 2079 | } | 2072 | } |
| 2080 | cpcomponentKey = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2073 | cpcomponentKey = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2081 | this.Core.CreateSimpleReference(sourceLineNumbers, "ComPlusComponent", cpcomponentKey); | 2074 | this.ParseHelper.CreateSimpleReference(section, sourceLineNumbers, "ComPlusComponent", cpcomponentKey); |
| 2082 | break; | 2075 | break; |
| 2083 | case "SubscriptionId": | 2076 | case "SubscriptionId": |
| 2084 | id = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2077 | id = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
| 2085 | break; | 2078 | break; |
| 2086 | case "Name": | 2079 | case "Name": |
| 2087 | name = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2080 | name = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2088 | break; | 2081 | break; |
| 2089 | case "EventCLSID": | 2082 | case "EventCLSID": |
| 2090 | eventCLSID = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2083 | eventCLSID = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2091 | break; | 2084 | break; |
| 2092 | case "PublisherID": | 2085 | case "PublisherID": |
| 2093 | publisherID = TryFormatGuidValue(this.Core.GetAttributeValue(sourceLineNumbers, attrib)); | 2086 | publisherID = this.TryFormatGuidValue(this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib)); |
| 2094 | break; | 2087 | break; |
| 2095 | case "Description": | 2088 | case "Description": |
| 2096 | properties["Description"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2089 | properties["Description"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2097 | break; | 2090 | break; |
| 2098 | case "Enabled": | 2091 | case "Enabled": |
| 2099 | properties["Enabled"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2092 | properties["Enabled"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 2100 | break; | 2093 | break; |
| 2101 | case "EventClassPartitionID": | 2094 | case "EventClassPartitionID": |
| 2102 | properties["EventClassPartitionID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2095 | properties["EventClassPartitionID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2103 | break; | 2096 | break; |
| 2104 | case "FilterCriteria": | 2097 | case "FilterCriteria": |
| 2105 | properties["FilterCriteria"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2098 | properties["FilterCriteria"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2106 | break; | 2099 | break; |
| 2107 | case "InterfaceID": | 2100 | case "InterfaceID": |
| 2108 | properties["InterfaceID"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2101 | properties["InterfaceID"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2109 | break; | 2102 | break; |
| 2110 | case "MachineName": | 2103 | case "MachineName": |
| 2111 | properties["MachineName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2104 | properties["MachineName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2112 | break; | 2105 | break; |
| 2113 | case "MethodName": | 2106 | case "MethodName": |
| 2114 | properties["MethodName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2107 | properties["MethodName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2115 | break; | 2108 | break; |
| 2116 | case "PerUser": | 2109 | case "PerUser": |
| 2117 | properties["PerUser"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2110 | properties["PerUser"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 2118 | break; | 2111 | break; |
| 2119 | case "Queued": | 2112 | case "Queued": |
| 2120 | properties["Queued"] = YesNoType.Yes == this.Core.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; | 2113 | properties["Queued"] = YesNoType.Yes == this.ParseHelper.GetAttributeYesNoValue(sourceLineNumbers, attrib) ? "1" : "0"; |
| 2121 | break; | 2114 | break; |
| 2122 | case "SubscriberMoniker": | 2115 | case "SubscriberMoniker": |
| 2123 | properties["SubscriberMoniker"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2116 | properties["SubscriberMoniker"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2124 | break; | 2117 | break; |
| 2125 | case "UserName": | 2118 | case "UserName": |
| 2126 | properties["UserName"] = this.Core.GetAttributeValue(sourceLineNumbers, attrib); | 2119 | properties["UserName"] = this.ParseHelper.GetAttributeValue(sourceLineNumbers, attrib); |
| 2127 | break; | 2120 | break; |
| 2128 | default: | 2121 | default: |
| 2129 | this.Core.UnexpectedAttribute(node, attrib); | 2122 | this.ParseHelper.UnexpectedAttribute(node, attrib); |
| 2130 | break; | 2123 | break; |
| 2131 | } | 2124 | } |
| 2132 | } | 2125 | } |
| 2133 | else | 2126 | else |
| 2134 | { | 2127 | { |
| 2135 | this.Core.ParseExtensionAttribute(node, attrib); | 2128 | this.ParseHelper.ParseExtensionAttribute(this.Context.Extensions, intermediate, section, node, attrib); |
| 2136 | } | 2129 | } |
| 2137 | } | 2130 | } |
| 2138 | 2131 | ||
| 2139 | if (null == cpcomponentKey) | 2132 | if (null == cpcomponentKey) |
| 2140 | { | 2133 | { |
| 2141 | this.Core.OnMessage(WixErrors.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); | 2134 | this.Messaging.Write(ErrorMessages.ExpectedAttribute(sourceLineNumbers, node.Name.LocalName, "Component")); |
| 2142 | } | 2135 | } |
| 2143 | 2136 | ||
| 2144 | this.Core.ParseForExtensionElements(node); | 2137 | this.ParseHelper.ParseForExtensionElements(this.Context.Extensions, intermediate, section, node); |
| 2145 | 2138 | ||
| 2146 | Row row = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscription"); | 2139 | var row = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscription"); |
| 2147 | row[0] = key; | 2140 | row.Set(0, key); |
| 2148 | row[1] = cpcomponentKey; | 2141 | row.Set(1, cpcomponentKey); |
| 2149 | row[2] = componentKey; | 2142 | row.Set(2, componentKey); |
| 2150 | row[3] = id; | 2143 | row.Set(3, id); |
| 2151 | row[4] = name; | 2144 | row.Set(4, name); |
| 2152 | row[5] = eventCLSID; | 2145 | row.Set(5, eventCLSID); |
| 2153 | row[6] = publisherID; | 2146 | row.Set(6, publisherID); |
| 2154 | 2147 | ||
| 2155 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); | 2148 | IDictionaryEnumerator propertiesEnumerator = properties.GetEnumerator(); |
| 2156 | while (propertiesEnumerator.MoveNext()) | 2149 | while (propertiesEnumerator.MoveNext()) |
| 2157 | { | 2150 | { |
| 2158 | Row propertyRow = this.Core.CreateRow(sourceLineNumbers, "ComPlusSubscriptionProperty"); | 2151 | var propertyRow = this.ParseHelper.CreateRow(section, sourceLineNumbers, "ComPlusSubscriptionProperty"); |
| 2159 | propertyRow[0] = key; | 2152 | propertyRow.Set(0, key); |
| 2160 | propertyRow[1] = (string)propertiesEnumerator.Key; | 2153 | propertyRow.Set(1, (string)propertiesEnumerator.Key); |
| 2161 | propertyRow[2] = (string)propertiesEnumerator.Value; | 2154 | propertyRow.Set(2, (string)propertiesEnumerator.Value); |
| 2162 | } | 2155 | } |
| 2163 | } | 2156 | } |
| 2164 | 2157 | ||
diff --git a/src/wixext/ComPlusDecompiler.cs b/src/wixext/ComPlusDecompiler.cs index 27f1653e..6da2df94 100644 --- a/src/wixext/ComPlusDecompiler.cs +++ b/src/wixext/ComPlusDecompiler.cs | |||
| @@ -1,7 +1,8 @@ | |||
| 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. | 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 | 2 | ||
| 3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
| 4 | { | 4 | { |
| 5 | #if TODO_CONSIDER_DECOMPILER | ||
| 5 | using System; | 6 | using System; |
| 6 | using System.Collections; | 7 | using System.Collections; |
| 7 | using System.Globalization; | 8 | using System.Globalization; |
| @@ -1840,4 +1841,5 @@ namespace WixToolset.Extensions | |||
| 1840 | } | 1841 | } |
| 1841 | } | 1842 | } |
| 1842 | } | 1843 | } |
| 1844 | #endif | ||
| 1843 | } | 1845 | } |
diff --git a/src/wixext/ComPlusErrors.cs b/src/wixext/ComPlusErrors.cs new file mode 100644 index 00000000..91b41679 --- /dev/null +++ b/src/wixext/ComPlusErrors.cs | |||
| @@ -0,0 +1,72 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Resources; | ||
| 7 | using WixToolset.Data; | ||
| 8 | |||
| 9 | public static class ComPlusErrors | ||
| 10 | { | ||
| 11 | public static Message IllegalAttributeWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
| 12 | { | ||
| 13 | return Message(sourceLineNumbers, Ids.IllegalAttributeWithoutComponent, "The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName, attributeName); | ||
| 14 | } | ||
| 15 | |||
| 16 | public static Message IllegalElementWithoutComponent(SourceLineNumber sourceLineNumbers, string elementName) | ||
| 17 | { | ||
| 18 | return Message(sourceLineNumbers, Ids.IllegalElementWithoutComponent, "The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed.", elementName); | ||
| 19 | } | ||
| 20 | |||
| 21 | public static Message RequiredAttribute(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
| 22 | { | ||
| 23 | return Message(sourceLineNumbers, Ids.RequiredAttribute, "A {0} element must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
| 24 | } | ||
| 25 | |||
| 26 | public static Message RequiredAttributeNotUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName1, string attributeName2) | ||
| 27 | { | ||
| 28 | return Message(sourceLineNumbers, Ids.RequiredAttributeNotUnderComponent, "A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set.", elementName, attributeName1, attributeName2); | ||
| 29 | } | ||
| 30 | |||
| 31 | public static Message RequiredAttributeUnderComponent(SourceLineNumber sourceLineNumbers, string elementName, string attributeName) | ||
| 32 | { | ||
| 33 | return Message(sourceLineNumbers, Ids.RequiredAttributeUnderComponent, "The {0}/@{1} attribute must be provided when {0} element is nested under a component.", elementName, attributeName); | ||
| 34 | } | ||
| 35 | |||
| 36 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
| 37 | { | ||
| 38 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
| 39 | } | ||
| 40 | |||
| 41 | public static Message UnexpectedAttributeWithOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string value, string otherAttributeName, string otherValue) | ||
| 42 | { | ||
| 43 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithOtherValue, "The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'.", elementName, attributeName, value, otherAttributeName, otherValue); | ||
| 44 | } | ||
| 45 | |||
| 46 | public static Message UnexpectedAttributeWithoutOtherValue(SourceLineNumber sourceLineNumbers, string elementName, string attributeName, string otherAttributeName, string otherValue) | ||
| 47 | { | ||
| 48 | return Message(sourceLineNumbers, Ids.UnexpectedAttributeWithoutOtherValue, "The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'.", elementName, attributeName, otherAttributeName, otherValue); | ||
| 49 | } | ||
| 50 | |||
| 51 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
| 52 | { | ||
| 53 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, format, args); | ||
| 54 | } | ||
| 55 | |||
| 56 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
| 57 | { | ||
| 58 | return new Message(sourceLineNumber, MessageLevel.Error, (int)id, resourceManager, resourceName, args); | ||
| 59 | } | ||
| 60 | |||
| 61 | public enum Ids | ||
| 62 | { | ||
| 63 | IllegalAttributeWithoutComponent = 6000, | ||
| 64 | IllegalElementWithoutComponent = 6001, | ||
| 65 | UnexpectedAttributeWithOtherValue = 6002, | ||
| 66 | UnexpectedAttributeWithoutOtherValue = 6003, | ||
| 67 | RequiredAttributeUnderComponent = 6004, | ||
| 68 | RequiredAttribute = 6005, | ||
| 69 | RequiredAttributeNotUnderComponent = 6006, | ||
| 70 | } | ||
| 71 | } | ||
| 72 | } | ||
diff --git a/src/wixext/ComPlusExtensionData.cs b/src/wixext/ComPlusExtensionData.cs index cedc2474..954e89f6 100644 --- a/src/wixext/ComPlusExtensionData.cs +++ b/src/wixext/ComPlusExtensionData.cs | |||
| @@ -1,64 +1,30 @@ | |||
| 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. | 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 | 2 | ||
| 3 | namespace WixToolset.Extensions | 3 | namespace WixToolset.ComPlus |
| 4 | { | 4 | { |
| 5 | using System; | ||
| 6 | using System.Reflection; | ||
| 7 | using WixToolset.Data; | 5 | using WixToolset.Data; |
| 8 | using WixToolset.Extensibility; | 6 | using WixToolset.Extensibility; |
| 9 | 7 | ||
| 10 | /// <summary> | 8 | /// <summary> |
| 11 | /// The WiX Toolset COM+ Extension. | 9 | /// The WiX Toolset COM+ Extension. |
| 12 | /// </summary> | 10 | /// </summary> |
| 13 | public sealed class ComPlusExtensionData : ExtensionData | 11 | public sealed class ComPlusExtensionData : BaseExtensionData |
| 14 | { | 12 | { |
| 15 | /// <summary> | 13 | /// <summary> |
| 16 | /// Gets the default culture. | 14 | /// Gets the default culture. |
| 17 | /// </summary> | 15 | /// </summary> |
| 18 | /// <value>The default culture.</value> | 16 | /// <value>The default culture.</value> |
| 19 | public override string DefaultCulture | 17 | public override string DefaultCulture => "en-US"; |
| 20 | { | ||
| 21 | get { return "en-us"; } | ||
| 22 | } | ||
| 23 | |||
| 24 | /// <summary> | ||
| 25 | /// Gets the optional table definitions for this extension. | ||
| 26 | /// </summary> | ||
| 27 | /// <value>The optional table definitions for this extension.</value> | ||
| 28 | public override TableDefinitionCollection TableDefinitions | ||
| 29 | { | ||
| 30 | get | ||
| 31 | { | ||
| 32 | return ComPlusExtensionData.GetExtensionTableDefinitions(); | ||
| 33 | } | ||
| 34 | } | ||
| 35 | |||
| 36 | /// <summary> | ||
| 37 | /// Gets the library associated with this extension. | ||
| 38 | /// </summary> | ||
| 39 | /// <param name="tableDefinitions">The table definitions to use while loading the library.</param> | ||
| 40 | /// <returns>The loaded library.</returns> | ||
| 41 | public override Library GetLibrary(TableDefinitionCollection tableDefinitions) | ||
| 42 | { | ||
| 43 | return ComPlusExtensionData.GetExtensionLibrary(tableDefinitions); | ||
| 44 | } | ||
| 45 | 18 | ||
| 46 | /// <summary> | 19 | public override bool TryGetTupleDefinitionByName(string name, out IntermediateTupleDefinition tupleDefinition) |
| 47 | /// Internal mechanism to access the extension's table definitions. | ||
| 48 | /// </summary> | ||
| 49 | /// <returns>Extension's table definitions.</returns> | ||
| 50 | internal static TableDefinitionCollection GetExtensionTableDefinitions() | ||
| 51 | { | 20 | { |
| 52 | return ExtensionData.LoadTableDefinitionHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.tables.xml"); | 21 | tupleDefinition = ComPlusTupleDefinitions.ByName(name); |
| 22 | return tupleDefinition != null; | ||
| 53 | } | 23 | } |
| 54 | 24 | ||
| 55 | /// <summary> | 25 | public override Intermediate GetLibrary(ITupleDefinitionCreator tupleDefinitions) |
| 56 | /// Internal mechanism to access the extension's library. | ||
| 57 | /// </summary> | ||
| 58 | /// <returns>Extension's library.</returns> | ||
| 59 | internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions) | ||
| 60 | { | 26 | { |
| 61 | return ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.complus.wixlib", tableDefinitions); | 27 | return Intermediate.Load(typeof(ComPlusExtensionData).Assembly, "WixToolset.ComPlus.complus.wixlib", tupleDefinitions); |
| 62 | } | 28 | } |
| 63 | } | 29 | } |
| 64 | } | 30 | } |
diff --git a/src/wixext/ComPlusExtensionFactory.cs b/src/wixext/ComPlusExtensionFactory.cs new file mode 100644 index 00000000..d9405867 --- /dev/null +++ b/src/wixext/ComPlusExtensionFactory.cs | |||
| @@ -0,0 +1,18 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Collections.Generic; | ||
| 7 | using WixToolset.Extensibility; | ||
| 8 | |||
| 9 | public class ComPlusExtensionFactory : BaseExtensionFactory | ||
| 10 | { | ||
| 11 | protected override IEnumerable<Type> ExtensionTypes => new[] | ||
| 12 | { | ||
| 13 | typeof(ComPlusCompiler), | ||
| 14 | typeof(ComPlusExtensionData), | ||
| 15 | typeof(ComPlusWindowsInstallerBackendBinderExtension), | ||
| 16 | }; | ||
| 17 | } | ||
| 18 | } | ||
diff --git a/src/wixext/ComPlusWarnings.cs b/src/wixext/ComPlusWarnings.cs new file mode 100644 index 00000000..e0000918 --- /dev/null +++ b/src/wixext/ComPlusWarnings.cs | |||
| @@ -0,0 +1,31 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using System.Resources; | ||
| 7 | using WixToolset.Data; | ||
| 8 | |||
| 9 | public static class ComPlusWarnings | ||
| 10 | { | ||
| 11 | public static Message MissingComponents(SourceLineNumber sourceLineNumbers) | ||
| 12 | { | ||
| 13 | return Message(sourceLineNumbers, Ids.MissingComponents, "The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall."); | ||
| 14 | } | ||
| 15 | |||
| 16 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, string format, params object[] args) | ||
| 17 | { | ||
| 18 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, format, args); | ||
| 19 | } | ||
| 20 | |||
| 21 | private static Message Message(SourceLineNumber sourceLineNumber, Ids id, ResourceManager resourceManager, string resourceName, params object[] args) | ||
| 22 | { | ||
| 23 | return new Message(sourceLineNumber, MessageLevel.Warning, (int)id, resourceManager, resourceName, args); | ||
| 24 | } | ||
| 25 | |||
| 26 | public enum Ids | ||
| 27 | { | ||
| 28 | MissingComponents = 6007, | ||
| 29 | } | ||
| 30 | } | ||
| 31 | } | ||
diff --git a/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs new file mode 100644 index 00000000..b00add9e --- /dev/null +++ b/src/wixext/ComPlusWindowsInstallerBackendBinderExtension.cs | |||
| @@ -0,0 +1,26 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using System.Linq; | ||
| 6 | using System.Xml; | ||
| 7 | using WixToolset.Data.WindowsInstaller; | ||
| 8 | using WixToolset.Extensibility; | ||
| 9 | |||
| 10 | public class ComPlusWindowsInstallerBackendBinderExtension : BaseWindowsInstallerBackendBinderExtension | ||
| 11 | { | ||
| 12 | private static readonly TableDefinition[] Tables = LoadTables(); | ||
| 13 | |||
| 14 | protected override TableDefinition[] TableDefinitionsForTuples => Tables; | ||
| 15 | |||
| 16 | private static TableDefinition[] LoadTables() | ||
| 17 | { | ||
| 18 | using (var resourceStream = typeof(ComPlusWindowsInstallerBackendBinderExtension).Assembly.GetManifestResourceStream("WixToolset.ComPlus.tables.xml")) | ||
| 19 | using (var reader = XmlReader.Create(resourceStream)) | ||
| 20 | { | ||
| 21 | var tables = TableDefinitionCollection.Load(reader); | ||
| 22 | return tables.ToArray(); | ||
| 23 | } | ||
| 24 | } | ||
| 25 | } | ||
| 26 | } | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs new file mode 100644 index 00000000..2582d323 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationPropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusApplicationProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusApplicationProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Application_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationPropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusApplicationPropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusApplicationPropertyTupleFields | ||
| 27 | { | ||
| 28 | Application_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusApplicationPropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusApplicationPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusApplicationPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusApplicationPropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Application_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Application_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Application_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusApplicationPropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusApplicationPropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs new file mode 100644 index 00000000..98eee7f8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRolePropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRoleProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRolePropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusApplicationRolePropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusApplicationRolePropertyTupleFields | ||
| 27 | { | ||
| 28 | ApplicationRole_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusApplicationRolePropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusApplicationRolePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusApplicationRolePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRoleProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusApplicationRolePropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string ApplicationRole_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.ApplicationRole_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusApplicationRolePropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusApplicationRolePropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs new file mode 100644 index 00000000..5a0cf378 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusApplicationRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusApplicationRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.ApplicationRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Application_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationRoleTupleFields.Name), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusApplicationRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusApplicationRoleTupleFields | ||
| 28 | { | ||
| 29 | ApplicationRole, | ||
| 30 | Application_, | ||
| 31 | Component_, | ||
| 32 | Name, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusApplicationRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusApplicationRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplicationRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string ApplicationRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.ApplicationRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusApplicationRoleTupleFields.ApplicationRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Application_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Application_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Application_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Name | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusApplicationRoleTupleFields.Name].AsString(); | ||
| 68 | set => this.Set((int)ComPlusApplicationRoleTupleFields.Name, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusApplicationTuple.cs b/src/wixext/Tuples/ComPlusApplicationTuple.cs new file mode 100644 index 00000000..7fd5fbd4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusApplicationTuple.cs | |||
| @@ -0,0 +1,79 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusApplication = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusApplication.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Application), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Partition_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.CustomId), IntermediateFieldType.String), | ||
| 18 | new IntermediateFieldDefinition(nameof(ComPlusApplicationTupleFields.Name), IntermediateFieldType.String), | ||
| 19 | }, | ||
| 20 | typeof(ComPlusApplicationTuple)); | ||
| 21 | } | ||
| 22 | } | ||
| 23 | |||
| 24 | namespace WixToolset.ComPlus.Tuples | ||
| 25 | { | ||
| 26 | using WixToolset.Data; | ||
| 27 | |||
| 28 | public enum ComPlusApplicationTupleFields | ||
| 29 | { | ||
| 30 | Application, | ||
| 31 | Partition_, | ||
| 32 | Component_, | ||
| 33 | CustomId, | ||
| 34 | Name, | ||
| 35 | } | ||
| 36 | |||
| 37 | public class ComPlusApplicationTuple : IntermediateTuple | ||
| 38 | { | ||
| 39 | public ComPlusApplicationTuple() : base(ComPlusTupleDefinitions.ComPlusApplication, null, null) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public ComPlusApplicationTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusApplication, sourceLineNumber, id) | ||
| 44 | { | ||
| 45 | } | ||
| 46 | |||
| 47 | public IntermediateField this[ComPlusApplicationTupleFields index] => this.Fields[(int)index]; | ||
| 48 | |||
| 49 | public string Application | ||
| 50 | { | ||
| 51 | get => this.Fields[(int)ComPlusApplicationTupleFields.Application].AsString(); | ||
| 52 | set => this.Set((int)ComPlusApplicationTupleFields.Application, value); | ||
| 53 | } | ||
| 54 | |||
| 55 | public string Partition_ | ||
| 56 | { | ||
| 57 | get => this.Fields[(int)ComPlusApplicationTupleFields.Partition_].AsString(); | ||
| 58 | set => this.Set((int)ComPlusApplicationTupleFields.Partition_, value); | ||
| 59 | } | ||
| 60 | |||
| 61 | public string Component_ | ||
| 62 | { | ||
| 63 | get => this.Fields[(int)ComPlusApplicationTupleFields.Component_].AsString(); | ||
| 64 | set => this.Set((int)ComPlusApplicationTupleFields.Component_, value); | ||
| 65 | } | ||
| 66 | |||
| 67 | public string CustomId | ||
| 68 | { | ||
| 69 | get => this.Fields[(int)ComPlusApplicationTupleFields.CustomId].AsString(); | ||
| 70 | set => this.Set((int)ComPlusApplicationTupleFields.CustomId, value); | ||
| 71 | } | ||
| 72 | |||
| 73 | public string Name | ||
| 74 | { | ||
| 75 | get => this.Fields[(int)ComPlusApplicationTupleFields.Name].AsString(); | ||
| 76 | set => this.Set((int)ComPlusApplicationTupleFields.Name, value); | ||
| 77 | } | ||
| 78 | } | ||
| 79 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs new file mode 100644 index 00000000..be0bc073 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyDependencyTuple.cs | |||
| @@ -0,0 +1,55 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusAssemblyDependency = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusAssemblyDependency.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.Assembly_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyDependencyTupleFields.RequiredAssembly_), IntermediateFieldType.String), | ||
| 16 | }, | ||
| 17 | typeof(ComPlusAssemblyDependencyTuple)); | ||
| 18 | } | ||
| 19 | } | ||
| 20 | |||
| 21 | namespace WixToolset.ComPlus.Tuples | ||
| 22 | { | ||
| 23 | using WixToolset.Data; | ||
| 24 | |||
| 25 | public enum ComPlusAssemblyDependencyTupleFields | ||
| 26 | { | ||
| 27 | Assembly_, | ||
| 28 | RequiredAssembly_, | ||
| 29 | } | ||
| 30 | |||
| 31 | public class ComPlusAssemblyDependencyTuple : IntermediateTuple | ||
| 32 | { | ||
| 33 | public ComPlusAssemblyDependencyTuple() : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, null, null) | ||
| 34 | { | ||
| 35 | } | ||
| 36 | |||
| 37 | public ComPlusAssemblyDependencyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssemblyDependency, sourceLineNumber, id) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public IntermediateField this[ComPlusAssemblyDependencyTupleFields index] => this.Fields[(int)index]; | ||
| 42 | |||
| 43 | public string Assembly_ | ||
| 44 | { | ||
| 45 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.Assembly_].AsString(); | ||
| 46 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.Assembly_, value); | ||
| 47 | } | ||
| 48 | |||
| 49 | public string RequiredAssembly_ | ||
| 50 | { | ||
| 51 | get => this.Fields[(int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_].AsString(); | ||
| 52 | set => this.Set((int)ComPlusAssemblyDependencyTupleFields.RequiredAssembly_, value); | ||
| 53 | } | ||
| 54 | } | ||
| 55 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusAssemblyTuple.cs b/src/wixext/Tuples/ComPlusAssemblyTuple.cs new file mode 100644 index 00000000..0330b4e8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusAssemblyTuple.cs | |||
| @@ -0,0 +1,103 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusAssembly = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusAssembly.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Assembly), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Application_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.AssemblyName), IntermediateFieldType.String), | ||
| 18 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.DllPath), IntermediateFieldType.String), | ||
| 19 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.TlbPath), IntermediateFieldType.String), | ||
| 20 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.PSDllPath), IntermediateFieldType.String), | ||
| 21 | new IntermediateFieldDefinition(nameof(ComPlusAssemblyTupleFields.Attributes), IntermediateFieldType.Number), | ||
| 22 | }, | ||
| 23 | typeof(ComPlusAssemblyTuple)); | ||
| 24 | } | ||
| 25 | } | ||
| 26 | |||
| 27 | namespace WixToolset.ComPlus.Tuples | ||
| 28 | { | ||
| 29 | using WixToolset.Data; | ||
| 30 | |||
| 31 | public enum ComPlusAssemblyTupleFields | ||
| 32 | { | ||
| 33 | Assembly, | ||
| 34 | Application_, | ||
| 35 | Component_, | ||
| 36 | AssemblyName, | ||
| 37 | DllPath, | ||
| 38 | TlbPath, | ||
| 39 | PSDllPath, | ||
| 40 | Attributes, | ||
| 41 | } | ||
| 42 | |||
| 43 | public class ComPlusAssemblyTuple : IntermediateTuple | ||
| 44 | { | ||
| 45 | public ComPlusAssemblyTuple() : base(ComPlusTupleDefinitions.ComPlusAssembly, null, null) | ||
| 46 | { | ||
| 47 | } | ||
| 48 | |||
| 49 | public ComPlusAssemblyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusAssembly, sourceLineNumber, id) | ||
| 50 | { | ||
| 51 | } | ||
| 52 | |||
| 53 | public IntermediateField this[ComPlusAssemblyTupleFields index] => this.Fields[(int)index]; | ||
| 54 | |||
| 55 | public string Assembly | ||
| 56 | { | ||
| 57 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Assembly].AsString(); | ||
| 58 | set => this.Set((int)ComPlusAssemblyTupleFields.Assembly, value); | ||
| 59 | } | ||
| 60 | |||
| 61 | public string Application_ | ||
| 62 | { | ||
| 63 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Application_].AsString(); | ||
| 64 | set => this.Set((int)ComPlusAssemblyTupleFields.Application_, value); | ||
| 65 | } | ||
| 66 | |||
| 67 | public string Component_ | ||
| 68 | { | ||
| 69 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Component_].AsString(); | ||
| 70 | set => this.Set((int)ComPlusAssemblyTupleFields.Component_, value); | ||
| 71 | } | ||
| 72 | |||
| 73 | public string AssemblyName | ||
| 74 | { | ||
| 75 | get => this.Fields[(int)ComPlusAssemblyTupleFields.AssemblyName].AsString(); | ||
| 76 | set => this.Set((int)ComPlusAssemblyTupleFields.AssemblyName, value); | ||
| 77 | } | ||
| 78 | |||
| 79 | public string DllPath | ||
| 80 | { | ||
| 81 | get => this.Fields[(int)ComPlusAssemblyTupleFields.DllPath].AsString(); | ||
| 82 | set => this.Set((int)ComPlusAssemblyTupleFields.DllPath, value); | ||
| 83 | } | ||
| 84 | |||
| 85 | public string TlbPath | ||
| 86 | { | ||
| 87 | get => this.Fields[(int)ComPlusAssemblyTupleFields.TlbPath].AsString(); | ||
| 88 | set => this.Set((int)ComPlusAssemblyTupleFields.TlbPath, value); | ||
| 89 | } | ||
| 90 | |||
| 91 | public string PSDllPath | ||
| 92 | { | ||
| 93 | get => this.Fields[(int)ComPlusAssemblyTupleFields.PSDllPath].AsString(); | ||
| 94 | set => this.Set((int)ComPlusAssemblyTupleFields.PSDllPath, value); | ||
| 95 | } | ||
| 96 | |||
| 97 | public int Attributes | ||
| 98 | { | ||
| 99 | get => this.Fields[(int)ComPlusAssemblyTupleFields.Attributes].AsNumber(); | ||
| 100 | set => this.Set((int)ComPlusAssemblyTupleFields.Attributes, value); | ||
| 101 | } | ||
| 102 | } | ||
| 103 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs new file mode 100644 index 00000000..81651343 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentPropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusComponentProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusComponentProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusComponentPropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusComponentPropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusComponentPropertyTupleFields | ||
| 27 | { | ||
| 28 | ComPlusComponent_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusComponentPropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusComponentPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusComponentProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusComponentPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponentProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusComponentPropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string ComPlusComponent_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.ComPlusComponent_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusComponentPropertyTupleFields.ComPlusComponent_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusComponentPropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusComponentPropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusComponentTuple.cs b/src/wixext/Tuples/ComPlusComponentTuple.cs new file mode 100644 index 00000000..923ff6e3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusComponentTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusComponent = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusComponent.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.ComPlusComponent), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.Assembly_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusComponentTupleFields.CLSID), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusComponentTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusComponentTupleFields | ||
| 27 | { | ||
| 28 | ComPlusComponent, | ||
| 29 | Assembly_, | ||
| 30 | CLSID, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusComponentTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusComponentTuple() : base(ComPlusTupleDefinitions.ComPlusComponent, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusComponent, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusComponentTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string ComPlusComponent | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusComponentTupleFields.ComPlusComponent].AsString(); | ||
| 48 | set => this.Set((int)ComPlusComponentTupleFields.ComPlusComponent, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Assembly_ | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusComponentTupleFields.Assembly_].AsString(); | ||
| 54 | set => this.Set((int)ComPlusComponentTupleFields.Assembly_, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string CLSID | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusComponentTupleFields.CLSID].AsString(); | ||
| 60 | set => this.Set((int)ComPlusComponentTupleFields.CLSID, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs new file mode 100644 index 00000000..40b47eb3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInApplicationRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusGroupInApplicationRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInApplicationRoleTupleFields.Group_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusGroupInApplicationRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusGroupInApplicationRoleTupleFields | ||
| 28 | { | ||
| 29 | GroupInApplicationRole, | ||
| 30 | ApplicationRole_, | ||
| 31 | Component_, | ||
| 32 | Group_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusGroupInApplicationRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusGroupInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusGroupInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInApplicationRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusGroupInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string GroupInApplicationRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.GroupInApplicationRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string ApplicationRole_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.ApplicationRole_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Group_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusGroupInApplicationRoleTupleFields.Group_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusGroupInApplicationRoleTupleFields.Group_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs new file mode 100644 index 00000000..092937f0 --- /dev/null +++ b/src/wixext/Tuples/ComPlusGroupInPartitionRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusGroupInPartitionRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusGroupInPartitionRoleTupleFields.Group_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusGroupInPartitionRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusGroupInPartitionRoleTupleFields | ||
| 28 | { | ||
| 29 | GroupInPartitionRole, | ||
| 30 | PartitionRole_, | ||
| 31 | Component_, | ||
| 32 | Group_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusGroupInPartitionRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusGroupInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusGroupInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusGroupInPartitionRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusGroupInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string GroupInPartitionRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.GroupInPartitionRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string PartitionRole_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.PartitionRole_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Group_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusGroupInPartitionRoleTupleFields.Group_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusGroupInPartitionRoleTupleFields.Group_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs new file mode 100644 index 00000000..94f12914 --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfacePropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusInterfaceProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusInterfaceProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Interface_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusInterfacePropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusInterfacePropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusInterfacePropertyTupleFields | ||
| 27 | { | ||
| 28 | Interface_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusInterfacePropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusInterfacePropertyTuple() : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusInterfacePropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterfaceProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusInterfacePropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Interface_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Interface_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Interface_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusInterfacePropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusInterfacePropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusInterfaceTuple.cs b/src/wixext/Tuples/ComPlusInterfaceTuple.cs new file mode 100644 index 00000000..3c4042ef --- /dev/null +++ b/src/wixext/Tuples/ComPlusInterfaceTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusInterface = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusInterface.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.Interface), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusInterfaceTupleFields.IID), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusInterfaceTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusInterfaceTupleFields | ||
| 27 | { | ||
| 28 | Interface, | ||
| 29 | ComPlusComponent_, | ||
| 30 | IID, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusInterfaceTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusInterface, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusInterface, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusInterfaceTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Interface | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusInterfaceTupleFields.Interface].AsString(); | ||
| 48 | set => this.Set((int)ComPlusInterfaceTupleFields.Interface, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string ComPlusComponent_ | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusInterfaceTupleFields.ComPlusComponent_].AsString(); | ||
| 54 | set => this.Set((int)ComPlusInterfaceTupleFields.ComPlusComponent_, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string IID | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusInterfaceTupleFields.IID].AsString(); | ||
| 60 | set => this.Set((int)ComPlusInterfaceTupleFields.IID, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs new file mode 100644 index 00000000..8ebc3f6b --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodPropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusMethodProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusMethodProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Method_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusMethodPropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusMethodPropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusMethodPropertyTupleFields | ||
| 27 | { | ||
| 28 | Method_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusMethodPropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusMethodPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusMethodProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusMethodPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethodProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusMethodPropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Method_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Method_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Method_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusMethodPropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusMethodPropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusMethodTuple.cs b/src/wixext/Tuples/ComPlusMethodTuple.cs new file mode 100644 index 00000000..bcca034a --- /dev/null +++ b/src/wixext/Tuples/ComPlusMethodTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusMethod = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusMethod.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Method), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Interface_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Index), IntermediateFieldType.Number), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusMethodTupleFields.Name), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusMethodTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusMethodTupleFields | ||
| 28 | { | ||
| 29 | Method, | ||
| 30 | Interface_, | ||
| 31 | Index, | ||
| 32 | Name, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusMethodTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusMethodTuple() : base(ComPlusTupleDefinitions.ComPlusMethod, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusMethod, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusMethodTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string Method | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusMethodTupleFields.Method].AsString(); | ||
| 50 | set => this.Set((int)ComPlusMethodTupleFields.Method, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Interface_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusMethodTupleFields.Interface_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusMethodTupleFields.Interface_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public int Index | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusMethodTupleFields.Index].AsNumber(); | ||
| 62 | set => this.Set((int)ComPlusMethodTupleFields.Index, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Name | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusMethodTupleFields.Name].AsString(); | ||
| 68 | set => this.Set((int)ComPlusMethodTupleFields.Name, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs new file mode 100644 index 00000000..3427b10a --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionPropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusPartitionProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusPartitionProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Partition_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusPartitionPropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusPartitionPropertyTupleFields | ||
| 27 | { | ||
| 28 | Partition_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusPartitionPropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusPartitionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusPartitionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusPartitionPropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Partition_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Partition_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Partition_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusPartitionPropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusPartitionPropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs new file mode 100644 index 00000000..a2259cc6 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusPartitionRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusPartitionRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.PartitionRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Partition_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionRoleTupleFields.Name), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusPartitionRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusPartitionRoleTupleFields | ||
| 28 | { | ||
| 29 | PartitionRole, | ||
| 30 | Partition_, | ||
| 31 | Component_, | ||
| 32 | Name, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusPartitionRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string PartitionRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.PartitionRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusPartitionRoleTupleFields.PartitionRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Partition_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Partition_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Partition_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Name | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusPartitionRoleTupleFields.Name].AsString(); | ||
| 68 | set => this.Set((int)ComPlusPartitionRoleTupleFields.Name, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionTuple.cs b/src/wixext/Tuples/ComPlusPartitionTuple.cs new file mode 100644 index 00000000..68de9955 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusPartition = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusPartition.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Partition), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Component_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.CustomId), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionTupleFields.Name), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusPartitionTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusPartitionTupleFields | ||
| 28 | { | ||
| 29 | Partition, | ||
| 30 | Component_, | ||
| 31 | CustomId, | ||
| 32 | Name, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusPartitionTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusPartitionTuple() : base(ComPlusTupleDefinitions.ComPlusPartition, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusPartitionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartition, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusPartitionTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string Partition | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusPartitionTupleFields.Partition].AsString(); | ||
| 50 | set => this.Set((int)ComPlusPartitionTupleFields.Partition, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Component_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusPartitionTupleFields.Component_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusPartitionTupleFields.Component_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string CustomId | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusPartitionTupleFields.CustomId].AsString(); | ||
| 62 | set => this.Set((int)ComPlusPartitionTupleFields.CustomId, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Name | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusPartitionTupleFields.Name].AsString(); | ||
| 68 | set => this.Set((int)ComPlusPartitionTupleFields.Name, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusPartitionUserTuple.cs b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs new file mode 100644 index 00000000..33a58d38 --- /dev/null +++ b/src/wixext/Tuples/ComPlusPartitionUserTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusPartitionUser = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusPartitionUser.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.PartitionUser), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Partition_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusPartitionUserTupleFields.User_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusPartitionUserTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusPartitionUserTupleFields | ||
| 28 | { | ||
| 29 | PartitionUser, | ||
| 30 | Partition_, | ||
| 31 | Component_, | ||
| 32 | User_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusPartitionUserTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusPartitionUserTuple() : base(ComPlusTupleDefinitions.ComPlusPartitionUser, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusPartitionUserTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusPartitionUser, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusPartitionUserTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string PartitionUser | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.PartitionUser].AsString(); | ||
| 50 | set => this.Set((int)ComPlusPartitionUserTupleFields.PartitionUser, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Partition_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Partition_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusPartitionUserTupleFields.Partition_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusPartitionUserTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string User_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusPartitionUserTupleFields.User_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusPartitionUserTupleFields.User_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs new file mode 100644 index 00000000..75d8cfaf --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForComponentTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusRoleForComponent = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusRoleForComponent.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.RoleForComponent), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForComponentTupleFields.Component_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusRoleForComponentTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusRoleForComponentTupleFields | ||
| 28 | { | ||
| 29 | RoleForComponent, | ||
| 30 | ComPlusComponent_, | ||
| 31 | ApplicationRole_, | ||
| 32 | Component_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusRoleForComponentTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusRoleForComponentTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusRoleForComponentTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForComponent, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusRoleForComponentTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string RoleForComponent | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.RoleForComponent].AsString(); | ||
| 50 | set => this.Set((int)ComPlusRoleForComponentTupleFields.RoleForComponent, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string ComPlusComponent_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ComPlusComponent_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ComPlusComponent_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string ApplicationRole_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.ApplicationRole_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusRoleForComponentTupleFields.ApplicationRole_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Component_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusRoleForComponentTupleFields.Component_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusRoleForComponentTupleFields.Component_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs new file mode 100644 index 00000000..139417d3 --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForInterfaceTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusRoleForInterface = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusRoleForInterface.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.RoleForInterface), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Interface_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForInterfaceTupleFields.Component_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusRoleForInterfaceTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusRoleForInterfaceTupleFields | ||
| 28 | { | ||
| 29 | RoleForInterface, | ||
| 30 | Interface_, | ||
| 31 | ApplicationRole_, | ||
| 32 | Component_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusRoleForInterfaceTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusRoleForInterfaceTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusRoleForInterfaceTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForInterface, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusRoleForInterfaceTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string RoleForInterface | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.RoleForInterface].AsString(); | ||
| 50 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.RoleForInterface, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Interface_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Interface_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Interface_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string ApplicationRole_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.ApplicationRole_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Component_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusRoleForInterfaceTupleFields.Component_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusRoleForInterfaceTupleFields.Component_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs new file mode 100644 index 00000000..5b6e994e --- /dev/null +++ b/src/wixext/Tuples/ComPlusRoleForMethodTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusRoleForMethod = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusRoleForMethod.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.RoleForMethod), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Method_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusRoleForMethodTupleFields.Component_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusRoleForMethodTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusRoleForMethodTupleFields | ||
| 28 | { | ||
| 29 | RoleForMethod, | ||
| 30 | Method_, | ||
| 31 | ApplicationRole_, | ||
| 32 | Component_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusRoleForMethodTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusRoleForMethodTuple() : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusRoleForMethodTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusRoleForMethod, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusRoleForMethodTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string RoleForMethod | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.RoleForMethod].AsString(); | ||
| 50 | set => this.Set((int)ComPlusRoleForMethodTupleFields.RoleForMethod, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string Method_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Method_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Method_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string ApplicationRole_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.ApplicationRole_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusRoleForMethodTupleFields.ApplicationRole_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Component_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusRoleForMethodTupleFields.Component_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusRoleForMethodTupleFields.Component_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs new file mode 100644 index 00000000..ad0841f4 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionPropertyTuple.cs | |||
| @@ -0,0 +1,63 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusSubscriptionProperty = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusSubscriptionProperty.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Subscription_), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Name), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionPropertyTupleFields.Value), IntermediateFieldType.String), | ||
| 17 | }, | ||
| 18 | typeof(ComPlusSubscriptionPropertyTuple)); | ||
| 19 | } | ||
| 20 | } | ||
| 21 | |||
| 22 | namespace WixToolset.ComPlus.Tuples | ||
| 23 | { | ||
| 24 | using WixToolset.Data; | ||
| 25 | |||
| 26 | public enum ComPlusSubscriptionPropertyTupleFields | ||
| 27 | { | ||
| 28 | Subscription_, | ||
| 29 | Name, | ||
| 30 | Value, | ||
| 31 | } | ||
| 32 | |||
| 33 | public class ComPlusSubscriptionPropertyTuple : IntermediateTuple | ||
| 34 | { | ||
| 35 | public ComPlusSubscriptionPropertyTuple() : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, null, null) | ||
| 36 | { | ||
| 37 | } | ||
| 38 | |||
| 39 | public ComPlusSubscriptionPropertyTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscriptionProperty, sourceLineNumber, id) | ||
| 40 | { | ||
| 41 | } | ||
| 42 | |||
| 43 | public IntermediateField this[ComPlusSubscriptionPropertyTupleFields index] => this.Fields[(int)index]; | ||
| 44 | |||
| 45 | public string Subscription_ | ||
| 46 | { | ||
| 47 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Subscription_].AsString(); | ||
| 48 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Subscription_, value); | ||
| 49 | } | ||
| 50 | |||
| 51 | public string Name | ||
| 52 | { | ||
| 53 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Name].AsString(); | ||
| 54 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Name, value); | ||
| 55 | } | ||
| 56 | |||
| 57 | public string Value | ||
| 58 | { | ||
| 59 | get => this.Fields[(int)ComPlusSubscriptionPropertyTupleFields.Value].AsString(); | ||
| 60 | set => this.Set((int)ComPlusSubscriptionPropertyTupleFields.Value, value); | ||
| 61 | } | ||
| 62 | } | ||
| 63 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusSubscriptionTuple.cs b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs new file mode 100644 index 00000000..fedab172 --- /dev/null +++ b/src/wixext/Tuples/ComPlusSubscriptionTuple.cs | |||
| @@ -0,0 +1,95 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusSubscription = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusSubscription.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Subscription), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.ComPlusComponent_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.CustomId), IntermediateFieldType.String), | ||
| 18 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.Name), IntermediateFieldType.String), | ||
| 19 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.EventCLSID), IntermediateFieldType.String), | ||
| 20 | new IntermediateFieldDefinition(nameof(ComPlusSubscriptionTupleFields.PublisherID), IntermediateFieldType.String), | ||
| 21 | }, | ||
| 22 | typeof(ComPlusSubscriptionTuple)); | ||
| 23 | } | ||
| 24 | } | ||
| 25 | |||
| 26 | namespace WixToolset.ComPlus.Tuples | ||
| 27 | { | ||
| 28 | using WixToolset.Data; | ||
| 29 | |||
| 30 | public enum ComPlusSubscriptionTupleFields | ||
| 31 | { | ||
| 32 | Subscription, | ||
| 33 | ComPlusComponent_, | ||
| 34 | Component_, | ||
| 35 | CustomId, | ||
| 36 | Name, | ||
| 37 | EventCLSID, | ||
| 38 | PublisherID, | ||
| 39 | } | ||
| 40 | |||
| 41 | public class ComPlusSubscriptionTuple : IntermediateTuple | ||
| 42 | { | ||
| 43 | public ComPlusSubscriptionTuple() : base(ComPlusTupleDefinitions.ComPlusSubscription, null, null) | ||
| 44 | { | ||
| 45 | } | ||
| 46 | |||
| 47 | public ComPlusSubscriptionTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusSubscription, sourceLineNumber, id) | ||
| 48 | { | ||
| 49 | } | ||
| 50 | |||
| 51 | public IntermediateField this[ComPlusSubscriptionTupleFields index] => this.Fields[(int)index]; | ||
| 52 | |||
| 53 | public string Subscription | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Subscription].AsString(); | ||
| 56 | set => this.Set((int)ComPlusSubscriptionTupleFields.Subscription, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string ComPlusComponent_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.ComPlusComponent_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusSubscriptionTupleFields.ComPlusComponent_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string Component_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Component_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusSubscriptionTupleFields.Component_, value); | ||
| 69 | } | ||
| 70 | |||
| 71 | public string CustomId | ||
| 72 | { | ||
| 73 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.CustomId].AsString(); | ||
| 74 | set => this.Set((int)ComPlusSubscriptionTupleFields.CustomId, value); | ||
| 75 | } | ||
| 76 | |||
| 77 | public string Name | ||
| 78 | { | ||
| 79 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.Name].AsString(); | ||
| 80 | set => this.Set((int)ComPlusSubscriptionTupleFields.Name, value); | ||
| 81 | } | ||
| 82 | |||
| 83 | public string EventCLSID | ||
| 84 | { | ||
| 85 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.EventCLSID].AsString(); | ||
| 86 | set => this.Set((int)ComPlusSubscriptionTupleFields.EventCLSID, value); | ||
| 87 | } | ||
| 88 | |||
| 89 | public string PublisherID | ||
| 90 | { | ||
| 91 | get => this.Fields[(int)ComPlusSubscriptionTupleFields.PublisherID].AsString(); | ||
| 92 | set => this.Set((int)ComPlusSubscriptionTupleFields.PublisherID, value); | ||
| 93 | } | ||
| 94 | } | ||
| 95 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusTupleDefinitions.cs b/src/wixext/Tuples/ComPlusTupleDefinitions.cs new file mode 100644 index 00000000..1019c046 --- /dev/null +++ b/src/wixext/Tuples/ComPlusTupleDefinitions.cs | |||
| @@ -0,0 +1,135 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using System; | ||
| 6 | using WixToolset.Data; | ||
| 7 | |||
| 8 | public enum ComPlusTupleDefinitionType | ||
| 9 | { | ||
| 10 | ComPlusApplication, | ||
| 11 | ComPlusApplicationProperty, | ||
| 12 | ComPlusApplicationRole, | ||
| 13 | ComPlusApplicationRoleProperty, | ||
| 14 | ComPlusAssembly, | ||
| 15 | ComPlusAssemblyDependency, | ||
| 16 | ComPlusComponent, | ||
| 17 | ComPlusComponentProperty, | ||
| 18 | ComPlusGroupInApplicationRole, | ||
| 19 | ComPlusGroupInPartitionRole, | ||
| 20 | ComPlusInterface, | ||
| 21 | ComPlusInterfaceProperty, | ||
| 22 | ComPlusMethod, | ||
| 23 | ComPlusMethodProperty, | ||
| 24 | ComPlusPartition, | ||
| 25 | ComPlusPartitionProperty, | ||
| 26 | ComPlusPartitionRole, | ||
| 27 | ComPlusPartitionUser, | ||
| 28 | ComPlusRoleForComponent, | ||
| 29 | ComPlusRoleForInterface, | ||
| 30 | ComPlusRoleForMethod, | ||
| 31 | ComPlusSubscription, | ||
| 32 | ComPlusSubscriptionProperty, | ||
| 33 | ComPlusUserInApplicationRole, | ||
| 34 | ComPlusUserInPartitionRole, | ||
| 35 | } | ||
| 36 | |||
| 37 | public static partial class ComPlusTupleDefinitions | ||
| 38 | { | ||
| 39 | public static readonly Version Version = new Version("4.0.0"); | ||
| 40 | |||
| 41 | public static IntermediateTupleDefinition ByName(string name) | ||
| 42 | { | ||
| 43 | if (!Enum.TryParse(name, out ComPlusTupleDefinitionType type)) | ||
| 44 | { | ||
| 45 | return null; | ||
| 46 | } | ||
| 47 | |||
| 48 | return ByType(type); | ||
| 49 | } | ||
| 50 | |||
| 51 | public static IntermediateTupleDefinition ByType(ComPlusTupleDefinitionType type) | ||
| 52 | { | ||
| 53 | switch (type) | ||
| 54 | { | ||
| 55 | case ComPlusTupleDefinitionType.ComPlusApplication: | ||
| 56 | return ComPlusTupleDefinitions.ComPlusApplication; | ||
| 57 | |||
| 58 | case ComPlusTupleDefinitionType.ComPlusApplicationProperty: | ||
| 59 | return ComPlusTupleDefinitions.ComPlusApplicationProperty; | ||
| 60 | |||
| 61 | case ComPlusTupleDefinitionType.ComPlusApplicationRole: | ||
| 62 | return ComPlusTupleDefinitions.ComPlusApplicationRole; | ||
| 63 | |||
| 64 | case ComPlusTupleDefinitionType.ComPlusApplicationRoleProperty: | ||
| 65 | return ComPlusTupleDefinitions.ComPlusApplicationRoleProperty; | ||
| 66 | |||
| 67 | case ComPlusTupleDefinitionType.ComPlusAssembly: | ||
| 68 | return ComPlusTupleDefinitions.ComPlusAssembly; | ||
| 69 | |||
| 70 | case ComPlusTupleDefinitionType.ComPlusAssemblyDependency: | ||
| 71 | return ComPlusTupleDefinitions.ComPlusAssemblyDependency; | ||
| 72 | |||
| 73 | case ComPlusTupleDefinitionType.ComPlusComponent: | ||
| 74 | return ComPlusTupleDefinitions.ComPlusComponent; | ||
| 75 | |||
| 76 | case ComPlusTupleDefinitionType.ComPlusComponentProperty: | ||
| 77 | return ComPlusTupleDefinitions.ComPlusComponentProperty; | ||
| 78 | |||
| 79 | case ComPlusTupleDefinitionType.ComPlusGroupInApplicationRole: | ||
| 80 | return ComPlusTupleDefinitions.ComPlusGroupInApplicationRole; | ||
| 81 | |||
| 82 | case ComPlusTupleDefinitionType.ComPlusGroupInPartitionRole: | ||
| 83 | return ComPlusTupleDefinitions.ComPlusGroupInPartitionRole; | ||
| 84 | |||
| 85 | case ComPlusTupleDefinitionType.ComPlusInterface: | ||
| 86 | return ComPlusTupleDefinitions.ComPlusInterface; | ||
| 87 | |||
| 88 | case ComPlusTupleDefinitionType.ComPlusInterfaceProperty: | ||
| 89 | return ComPlusTupleDefinitions.ComPlusInterfaceProperty; | ||
| 90 | |||
| 91 | case ComPlusTupleDefinitionType.ComPlusMethod: | ||
| 92 | return ComPlusTupleDefinitions.ComPlusMethod; | ||
| 93 | |||
| 94 | case ComPlusTupleDefinitionType.ComPlusMethodProperty: | ||
| 95 | return ComPlusTupleDefinitions.ComPlusMethodProperty; | ||
| 96 | |||
| 97 | case ComPlusTupleDefinitionType.ComPlusPartition: | ||
| 98 | return ComPlusTupleDefinitions.ComPlusPartition; | ||
| 99 | |||
| 100 | case ComPlusTupleDefinitionType.ComPlusPartitionProperty: | ||
| 101 | return ComPlusTupleDefinitions.ComPlusPartitionProperty; | ||
| 102 | |||
| 103 | case ComPlusTupleDefinitionType.ComPlusPartitionRole: | ||
| 104 | return ComPlusTupleDefinitions.ComPlusPartitionRole; | ||
| 105 | |||
| 106 | case ComPlusTupleDefinitionType.ComPlusPartitionUser: | ||
| 107 | return ComPlusTupleDefinitions.ComPlusPartitionUser; | ||
| 108 | |||
| 109 | case ComPlusTupleDefinitionType.ComPlusRoleForComponent: | ||
| 110 | return ComPlusTupleDefinitions.ComPlusRoleForComponent; | ||
| 111 | |||
| 112 | case ComPlusTupleDefinitionType.ComPlusRoleForInterface: | ||
| 113 | return ComPlusTupleDefinitions.ComPlusRoleForInterface; | ||
| 114 | |||
| 115 | case ComPlusTupleDefinitionType.ComPlusRoleForMethod: | ||
| 116 | return ComPlusTupleDefinitions.ComPlusRoleForMethod; | ||
| 117 | |||
| 118 | case ComPlusTupleDefinitionType.ComPlusSubscription: | ||
| 119 | return ComPlusTupleDefinitions.ComPlusSubscription; | ||
| 120 | |||
| 121 | case ComPlusTupleDefinitionType.ComPlusSubscriptionProperty: | ||
| 122 | return ComPlusTupleDefinitions.ComPlusSubscriptionProperty; | ||
| 123 | |||
| 124 | case ComPlusTupleDefinitionType.ComPlusUserInApplicationRole: | ||
| 125 | return ComPlusTupleDefinitions.ComPlusUserInApplicationRole; | ||
| 126 | |||
| 127 | case ComPlusTupleDefinitionType.ComPlusUserInPartitionRole: | ||
| 128 | return ComPlusTupleDefinitions.ComPlusUserInPartitionRole; | ||
| 129 | |||
| 130 | default: | ||
| 131 | throw new ArgumentOutOfRangeException(nameof(type)); | ||
| 132 | } | ||
| 133 | } | ||
| 134 | } | ||
| 135 | } | ||
diff --git a/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs new file mode 100644 index 00000000..3916c0ee --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInApplicationRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusUserInApplicationRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusUserInApplicationRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.ApplicationRole_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusUserInApplicationRoleTupleFields.User_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusUserInApplicationRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusUserInApplicationRoleTupleFields | ||
| 28 | { | ||
| 29 | UserInApplicationRole, | ||
| 30 | ApplicationRole_, | ||
| 31 | Component_, | ||
| 32 | User_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusUserInApplicationRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusUserInApplicationRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusUserInApplicationRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInApplicationRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusUserInApplicationRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string UserInApplicationRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.UserInApplicationRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string ApplicationRole_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.ApplicationRole_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string User_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusUserInApplicationRoleTupleFields.User_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusUserInApplicationRoleTupleFields.User_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs new file mode 100644 index 00000000..06d742b8 --- /dev/null +++ b/src/wixext/Tuples/ComPlusUserInPartitionRoleTuple.cs | |||
| @@ -0,0 +1,71 @@ | |||
| 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.ComPlus | ||
| 4 | { | ||
| 5 | using WixToolset.Data; | ||
| 6 | using WixToolset.ComPlus.Tuples; | ||
| 7 | |||
| 8 | public static partial class ComPlusTupleDefinitions | ||
| 9 | { | ||
| 10 | public static readonly IntermediateTupleDefinition ComPlusUserInPartitionRole = new IntermediateTupleDefinition( | ||
| 11 | ComPlusTupleDefinitionType.ComPlusUserInPartitionRole.ToString(), | ||
| 12 | new[] | ||
| 13 | { | ||
| 14 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole), IntermediateFieldType.String), | ||
| 15 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.PartitionRole_), IntermediateFieldType.String), | ||
| 16 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.Component_), IntermediateFieldType.String), | ||
| 17 | new IntermediateFieldDefinition(nameof(ComPlusUserInPartitionRoleTupleFields.User_), IntermediateFieldType.String), | ||
| 18 | }, | ||
| 19 | typeof(ComPlusUserInPartitionRoleTuple)); | ||
| 20 | } | ||
| 21 | } | ||
| 22 | |||
| 23 | namespace WixToolset.ComPlus.Tuples | ||
| 24 | { | ||
| 25 | using WixToolset.Data; | ||
| 26 | |||
| 27 | public enum ComPlusUserInPartitionRoleTupleFields | ||
| 28 | { | ||
| 29 | UserInPartitionRole, | ||
| 30 | PartitionRole_, | ||
| 31 | Component_, | ||
| 32 | User_, | ||
| 33 | } | ||
| 34 | |||
| 35 | public class ComPlusUserInPartitionRoleTuple : IntermediateTuple | ||
| 36 | { | ||
| 37 | public ComPlusUserInPartitionRoleTuple() : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, null, null) | ||
| 38 | { | ||
| 39 | } | ||
| 40 | |||
| 41 | public ComPlusUserInPartitionRoleTuple(SourceLineNumber sourceLineNumber, Identifier id = null) : base(ComPlusTupleDefinitions.ComPlusUserInPartitionRole, sourceLineNumber, id) | ||
| 42 | { | ||
| 43 | } | ||
| 44 | |||
| 45 | public IntermediateField this[ComPlusUserInPartitionRoleTupleFields index] => this.Fields[(int)index]; | ||
| 46 | |||
| 47 | public string UserInPartitionRole | ||
| 48 | { | ||
| 49 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole].AsString(); | ||
| 50 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.UserInPartitionRole, value); | ||
| 51 | } | ||
| 52 | |||
| 53 | public string PartitionRole_ | ||
| 54 | { | ||
| 55 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_].AsString(); | ||
| 56 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.PartitionRole_, value); | ||
| 57 | } | ||
| 58 | |||
| 59 | public string Component_ | ||
| 60 | { | ||
| 61 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.Component_].AsString(); | ||
| 62 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.Component_, value); | ||
| 63 | } | ||
| 64 | |||
| 65 | public string User_ | ||
| 66 | { | ||
| 67 | get => this.Fields[(int)ComPlusUserInPartitionRoleTupleFields.User_].AsString(); | ||
| 68 | set => this.Set((int)ComPlusUserInPartitionRoleTupleFields.User_, value); | ||
| 69 | } | ||
| 70 | } | ||
| 71 | } \ No newline at end of file | ||
diff --git a/src/wixext/WixComPlusExtension.csproj b/src/wixext/WixComPlusExtension.csproj deleted file mode 100644 index 92cbacae..00000000 --- a/src/wixext/WixComPlusExtension.csproj +++ /dev/null | |||
| @@ -1,50 +0,0 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | |||
| 5 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
| 6 | <PropertyGroup> | ||
| 7 | <ProjectGuid>{1497B777-330B-4CFE-927A-22850CD24D64}</ProjectGuid> | ||
| 8 | <AssemblyName>WixComPlusExtension</AssemblyName> | ||
| 9 | <OutputType>Library</OutputType> | ||
| 10 | <RootNamespace>WixToolset.Extensions</RootNamespace> | ||
| 11 | </PropertyGroup> | ||
| 12 | <ItemGroup> | ||
| 13 | <Compile Include="AssemblyInfo.cs" /> | ||
| 14 | <Compile Include="ComPlusCompiler.cs" /> | ||
| 15 | <Compile Include="ComPlusDecompiler.cs" /> | ||
| 16 | <Compile Include="ComPlusExtensionData.cs" /> | ||
| 17 | <MsgGenSource Include="Data\messages.xml"> | ||
| 18 | <ResourcesLogicalName>$(RootNamespace).Data.Messages.resources</ResourcesLogicalName> | ||
| 19 | </MsgGenSource> | ||
| 20 | <EmbeddedFlattenedResource Include="Data\tables.xml"> | ||
| 21 | <LogicalName>$(RootNamespace).Data.tables.xml</LogicalName> | ||
| 22 | </EmbeddedFlattenedResource> | ||
| 23 | <EmbeddedFlattenedResource Include="Xsd\complus.xsd"> | ||
| 24 | <LogicalName>$(RootNamespace).Xsd.complus.xsd</LogicalName> | ||
| 25 | </EmbeddedFlattenedResource> | ||
| 26 | <XsdGenSource Include="Xsd\complus.xsd"> | ||
| 27 | <CommonNamespace>WixToolset.Data.Serialize</CommonNamespace> | ||
| 28 | <Namespace>WixToolset.Extensions.Serialize.ComPlus</Namespace> | ||
| 29 | </XsdGenSource> | ||
| 30 | <None Include="Xsd\complus.xsd"> | ||
| 31 | <Link>complus.xsd</Link> | ||
| 32 | <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> | ||
| 33 | </None> | ||
| 34 | <EmbeddedResource Include="$(OutputPath)\complus.wixlib"> | ||
| 35 | <Link>Data\complus.wixlib</Link> | ||
| 36 | </EmbeddedResource> | ||
| 37 | </ItemGroup> | ||
| 38 | <ItemGroup> | ||
| 39 | <Reference Include="System" /> | ||
| 40 | <Reference Include="System.Xml" /> | ||
| 41 | <Reference Include="System.Xml.Linq" /> | ||
| 42 | <ProjectReference Include="..\..\..\libs\WixToolset.Data\WixToolset.Data.csproj" /> | ||
| 43 | <ProjectReference Include="..\..\..\libs\WixToolset.Extensibility\WixToolset.Extensibility.csproj" /> | ||
| 44 | <ProjectReference Include="..\..\..\tools\wix\Wix.csproj" /> | ||
| 45 | <ProjectReference Include="..\wixlib\ComPlusExtension.wixproj"> | ||
| 46 | <ReferenceOutputAssembly>false</ReferenceOutputAssembly> | ||
| 47 | </ProjectReference> | ||
| 48 | </ItemGroup> | ||
| 49 | <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" /> | ||
| 50 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.csproj b/src/wixext/WixToolset.ComPlus.wixext.csproj new file mode 100644 index 00000000..882dc7e1 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.csproj | |||
| @@ -0,0 +1,33 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project Sdk="Microsoft.NET.Sdk"> | ||
| 5 | <PropertyGroup> | ||
| 6 | <TargetFramework>netstandard2.0</TargetFramework> | ||
| 7 | <RootNamespace>WixToolset.ComPlus</RootNamespace> | ||
| 8 | <Description>WiX Toolset ComPlus Extension</Description> | ||
| 9 | <Title>WiX Toolset ComPlus Extension</Title> | ||
| 10 | <IsTool>true</IsTool> | ||
| 11 | <ContentTargetFolders>build</ContentTargetFolders> | ||
| 12 | </PropertyGroup> | ||
| 13 | |||
| 14 | <ItemGroup> | ||
| 15 | <Content Include="$(MSBuildThisFileName).targets" /> | ||
| 16 | <Content Include="complus.xsd" PackagePath="tools" /> | ||
| 17 | <EmbeddedResource Include="tables.xml" /> | ||
| 18 | <EmbeddedResource Include="$(OutputPath)..\complus.wixlib" /> | ||
| 19 | </ItemGroup> | ||
| 20 | |||
| 21 | <ItemGroup> | ||
| 22 | <PackageReference Include="WixToolset.Data" Version="4.0.*" PrivateAssets="all" /> | ||
| 23 | <PackageReference Include="WixToolset.Extensibility" Version="4.0.*" PrivateAssets="all" /> | ||
| 24 | </ItemGroup> | ||
| 25 | |||
| 26 | <ItemGroup> | ||
| 27 | <ProjectReference Include="..\wixlib\complus.wixproj" ReferenceOutputAssembly="false" Condition=" '$(NCrunch)'=='' " /> | ||
| 28 | </ItemGroup> | ||
| 29 | |||
| 30 | <ItemGroup> | ||
| 31 | <PackageReference Include="Nerdbank.GitVersioning" Version="2.1.65" PrivateAssets="all" /> | ||
| 32 | </ItemGroup> | ||
| 33 | </Project> | ||
diff --git a/src/wixext/WixToolset.ComPlus.wixext.targets b/src/wixext/WixToolset.ComPlus.wixext.targets new file mode 100644 index 00000000..8115b715 --- /dev/null +++ b/src/wixext/WixToolset.ComPlus.wixext.targets | |||
| @@ -0,0 +1,11 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
| 5 | <PropertyGroup> | ||
| 6 | <WixToolsetComPlusWixextPath Condition=" '$(WixToolsetComPlusWixextPath)' == '' ">$(MSBuildThisFileDirectory)..\tools\WixToolset.ComPlus.wixext.dll</WixToolsetComPlusWixextPath> | ||
| 7 | </PropertyGroup> | ||
| 8 | <ItemGroup> | ||
| 9 | <WixExtension Include="$(WixToolsetComPlusWixextPath)" /> | ||
| 10 | </ItemGroup> | ||
| 11 | </Project> | ||
diff --git a/src/wixext/messages.xml b/src/wixext/messages.xml deleted file mode 100644 index 66c0a9e6..00000000 --- a/src/wixext/messages.xml +++ /dev/null | |||
| @@ -1,77 +0,0 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | |||
| 5 | <Messages Namespace="WixToolset.Extensions" Resources="Data.Messages" xmlns="http://schemas.microsoft.com/genmsgs/2004/07/messages"> | ||
| 6 | <Class Name="ComPlusErrors" ContainerName="ComPlusErrorEventArgs" BaseContainerName="MessageEventArgs"> | ||
| 7 | <Message Id="IllegalAttributeWithoutComponent" Number="6000"> | ||
| 8 | <Instance> | ||
| 9 | The {0}/@{1} attribute cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
| 10 | <Parameter Type="System.String" Name="elementName" /> | ||
| 11 | <Parameter Type="System.String" Name="attributeName" /> | ||
| 12 | </Instance> | ||
| 13 | </Message> | ||
| 14 | <Message Id="IllegalElementWithoutComponent" Number="6001"> | ||
| 15 | <Instance> | ||
| 16 | The {0} element cannot be specified unless the element has a component as an ancestor. A {0} that does not have a component ancestor is not installed. | ||
| 17 | <Parameter Type="System.String" Name="elementName" /> | ||
| 18 | </Instance> | ||
| 19 | </Message> | ||
| 20 | <Message Id="UnexpectedAttributeWithOtherValue" Number="6002"> | ||
| 21 | <Instance> | ||
| 22 | The {0}/@{1} attribute cannot coexist with the {2} attribute's value of '{3}'. | ||
| 23 | <Parameter Type="System.String" Name="elementName" /> | ||
| 24 | <Parameter Type="System.String" Name="attributeName" /> | ||
| 25 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
| 26 | <Parameter Type="System.String" Name="otherValue" /> | ||
| 27 | </Instance> | ||
| 28 | <Instance> | ||
| 29 | The {0}/@{1} attribute's value, '{2}', cannot coexist with the {3} attribute's value of '{4}'. | ||
| 30 | <Parameter Type="System.String" Name="elementName" /> | ||
| 31 | <Parameter Type="System.String" Name="attributeName" /> | ||
| 32 | <Parameter Type="System.String" Name="value" /> | ||
| 33 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
| 34 | <Parameter Type="System.String" Name="otherValue" /> | ||
| 35 | </Instance> | ||
| 36 | </Message> | ||
| 37 | <Message Id="UnexpectedAttributeWithoutOtherValue" Number="6003"> | ||
| 38 | <Instance> | ||
| 39 | The {0}/@{1} cannot be provided unless the {2} attribute is provided with a value of '{3}'. | ||
| 40 | <Parameter Type="System.String" Name="elementName" /> | ||
| 41 | <Parameter Type="System.String" Name="attributeName" /> | ||
| 42 | <Parameter Type="System.String" Name="otherAttributeName" /> | ||
| 43 | <Parameter Type="System.String" Name="otherValue" /> | ||
| 44 | </Instance> | ||
| 45 | </Message> | ||
| 46 | <Message Id="RequiredAttributeUnderComponent" Number="6004"> | ||
| 47 | <Instance> | ||
| 48 | The {0}/@{1} attribute must be provided when {0} element is nested under a component. | ||
| 49 | <Parameter Type="System.String" Name="elementName" /> | ||
| 50 | <Parameter Type="System.String" Name="attributeName" /> | ||
| 51 | </Instance> | ||
| 52 | </Message> | ||
| 53 | <Message Id="RequiredAttribute" Number="6005"> | ||
| 54 | <Instance> | ||
| 55 | A {0} element must have either a {1} attribute or a {2} attribute, or both set. | ||
| 56 | <Parameter Type="System.String" Name="elementName" /> | ||
| 57 | <Parameter Type="System.String" Name="attributeName1" /> | ||
| 58 | <Parameter Type="System.String" Name="attributeName2" /> | ||
| 59 | </Instance> | ||
| 60 | </Message> | ||
| 61 | <Message Id="RequiredAttributeNotUnderComponent" Number="6006"> | ||
| 62 | <Instance> | ||
| 63 | A {0} element not nested under a component must have either a {1} attribute or a {2} attribute, or both set. | ||
| 64 | <Parameter Type="System.String" Name="elementName" /> | ||
| 65 | <Parameter Type="System.String" Name="attributeName1" /> | ||
| 66 | <Parameter Type="System.String" Name="attributeName2" /> | ||
| 67 | </Instance> | ||
| 68 | </Message> | ||
| 69 | </Class> | ||
| 70 | <Class Name="ComPlusWarnings" ContainerName="ComPlusWarningEventArgs" BaseContainerName="MessageEventArgs"> | ||
| 71 | <Message Id="MissingComponents" Number="6007"> | ||
| 72 | <Instance>The ComPlusAssembly element has a Type attribute with a value of 'native', but the element does not contain any ComPlusComponent elements. All components contained in a native assembly must be listed, or they will not be correctly removed during uninstall.</Instance> | ||
| 73 | </Message> | ||
| 74 | </Class> | ||
| 75 | <Class Name="ComPlusVerboses" ContainerName="ComPlusVerboseEventArgs" BaseContainerName="MessageEventArgs"> | ||
| 76 | </Class> | ||
| 77 | </Messages> | ||
diff --git a/src/wixlib/ComPlusExtension.wixproj b/src/wixlib/ComPlusExtension.wixproj deleted file mode 100644 index 49c688cd..00000000 --- a/src/wixlib/ComPlusExtension.wixproj +++ /dev/null | |||
| @@ -1,26 +0,0 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8" ?> | ||
| 2 | <!-- 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. --> | ||
| 3 | |||
| 4 | |||
| 5 | <Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0"> | ||
| 6 | <PropertyGroup> | ||
| 7 | <ProjectGuid>{E191E61E-E098-4F71-888F-51A79F952022}</ProjectGuid> | ||
| 8 | <OutputName>complus</OutputName> | ||
| 9 | <OutputType>Library</OutputType> | ||
| 10 | <BindFiles>true</BindFiles> | ||
| 11 | <SuppressSpecificWarnings>1086</SuppressSpecificWarnings> | ||
| 12 | </PropertyGroup> | ||
| 13 | |||
| 14 | <ItemGroup> | ||
| 15 | <Compile Include="ComPlusExtension.wxs" /> | ||
| 16 | <EmbeddedResource Include="en-us.wxl" /> | ||
| 17 | <EmbeddedResource Include="es-es.wxl" /> | ||
| 18 | <EmbeddedResource Include="ja-jp.wxl" /> | ||
| 19 | </ItemGroup> | ||
| 20 | |||
| 21 | <ItemGroup> | ||
| 22 | <ProjectReference Include="..\ca\complusca.proj" /> | ||
| 23 | </ItemGroup> | ||
| 24 | |||
| 25 | <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildProjectDirectory), wix.proj))\tools\WixBuild.targets" /> | ||
| 26 | </Project> | ||
diff --git a/src/wixlib/ComPlusExtension.wxs b/src/wixlib/ComPlusExtension.wxs index 3a5c1512..2a5710c0 100644 --- a/src/wixlib/ComPlusExtension.wxs +++ b/src/wixlib/ComPlusExtension.wxs | |||
| @@ -60,19 +60,19 @@ | |||
| 60 | <Fragment> | 60 | <Fragment> |
| 61 | <UIRef Id="ComPlusUI" /> | 61 | <UIRef Id="ComPlusUI" /> |
| 62 | 62 | ||
| 63 | <CustomAction Id="ConfigureComPlusInstall" BinaryKey="WixCPSched_x86" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 63 | <CustomAction Id="ConfigureComPlusInstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
| 64 | <CustomAction Id="ConfigureComPlusUninstall" BinaryKey="WixCPSched_x86" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 64 | <CustomAction Id="ConfigureComPlusUninstall" BinaryKey="ComPlusCA_x86" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
| 65 | <CustomAction Id="ComPlusInstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 65 | <CustomAction Id="ComPlusInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 66 | <CustomAction Id="ComPlusRollbackInstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 66 | <CustomAction Id="ComPlusRollbackInstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 67 | <CustomAction Id="ComPlusInstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 67 | <CustomAction Id="ComPlusInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 68 | <CustomAction Id="ComPlusInstallExecuteCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 68 | <CustomAction Id="ComPlusInstallExecuteCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 69 | <CustomAction Id="ComPlusRollbackInstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 69 | <CustomAction Id="ComPlusRollbackInstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 70 | <CustomAction Id="ComPlusInstallCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 70 | <CustomAction Id="ComPlusInstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 71 | <CustomAction Id="ComPlusUninstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 71 | <CustomAction Id="ComPlusUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 72 | <CustomAction Id="ComPlusRollbackUninstallPrepare" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 72 | <CustomAction Id="ComPlusRollbackUninstallPrepare" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 73 | <CustomAction Id="ComPlusUninstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 73 | <CustomAction Id="ComPlusUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 74 | <CustomAction Id="ComPlusRollbackUninstallExecute" BinaryKey="WixCPExec_x86" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 74 | <CustomAction Id="ComPlusRollbackUninstallExecute" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 75 | <CustomAction Id="ComPlusUninstallCommit" BinaryKey="WixCPExec_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 75 | <CustomAction Id="ComPlusUninstallCommit" BinaryKey="ComPlusCA_x86" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 76 | 76 | ||
| 77 | <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" /> | 77 | <Property Id="ComPlusInstallPrepare" Hidden="yes" SuppressModularization="yes" /> |
| 78 | <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" /> | 78 | <Property Id="ComPlusRollbackInstallPrepare" Hidden="yes" SuppressModularization="yes" /> |
| @@ -95,19 +95,19 @@ | |||
| 95 | <Fragment> | 95 | <Fragment> |
| 96 | <UIRef Id="ComPlusUI" /> | 96 | <UIRef Id="ComPlusUI" /> |
| 97 | 97 | ||
| 98 | <CustomAction Id="ConfigureComPlusInstall_x64" BinaryKey="WixCPSched_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 98 | <CustomAction Id="ConfigureComPlusInstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusInstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
| 99 | <CustomAction Id="ConfigureComPlusUninstall_x64" BinaryKey="WixCPSched_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> | 99 | <CustomAction Id="ConfigureComPlusUninstall_x64" BinaryKey="ComPlusCA_x64" DllEntry="ConfigureComPlusUninstall" Execute="immediate" Return="check" SuppressModularization="yes" /> |
| 100 | <CustomAction Id="ComPlusInstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 100 | <CustomAction Id="ComPlusInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 101 | <CustomAction Id="ComPlusRollbackInstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 101 | <CustomAction Id="ComPlusRollbackInstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 102 | <CustomAction Id="ComPlusInstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 102 | <CustomAction Id="ComPlusInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 103 | <CustomAction Id="ComPlusInstallExecuteCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 103 | <CustomAction Id="ComPlusInstallExecuteCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecuteCommit" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 104 | <CustomAction Id="ComPlusRollbackInstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 104 | <CustomAction Id="ComPlusRollbackInstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusRollbackInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 105 | <CustomAction Id="ComPlusInstallCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 105 | <CustomAction Id="ComPlusInstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 106 | <CustomAction Id="ComPlusUninstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 106 | <CustomAction Id="ComPlusUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusPrepare" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 107 | <CustomAction Id="ComPlusRollbackUninstallPrepare_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 107 | <CustomAction Id="ComPlusRollbackUninstallPrepare_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 108 | <CustomAction Id="ComPlusUninstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 108 | <CustomAction Id="ComPlusUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusUninstallExecute" Execute="deferred" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 109 | <CustomAction Id="ComPlusRollbackUninstallExecute_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 109 | <CustomAction Id="ComPlusRollbackUninstallExecute_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusInstallExecute" Execute="rollback" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 110 | <CustomAction Id="ComPlusUninstallCommit_64" BinaryKey="WixCPExec_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> | 110 | <CustomAction Id="ComPlusUninstallCommit_64" BinaryKey="ComPlusCA_x64" DllEntry="ComPlusCleanup" Execute="commit" Return="check" Impersonate="no" HideTarget="yes" SuppressModularization="yes" /> |
| 111 | 111 | ||
| 112 | <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> | 112 | <Property Id="ComPlusInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> |
| 113 | <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> | 113 | <Property Id="ComPlusRollbackInstallPrepare_64" Hidden="yes" SuppressModularization="yes" /> |
| @@ -128,12 +128,10 @@ | |||
| 128 | </Fragment> | 128 | </Fragment> |
| 129 | 129 | ||
| 130 | <Fragment> | 130 | <Fragment> |
| 131 | <Binary Id="WixCPExec_x86" SourceFile="!(bindpath.x86)\cpexec.dll"/> | 131 | <Binary Id="ComPlusCA_x86" SourceFile="!(bindpath.x86)complusca.dll"/> |
| 132 | <Binary Id="WixCPSched_x86" SourceFile="!(bindpath.x86)\cpsched.dll"/> | ||
| 133 | </Fragment> | 132 | </Fragment> |
| 134 | 133 | ||
| 135 | <Fragment> | 134 | <Fragment> |
| 136 | <Binary Id="WixCPExec_x64" SourceFile="!(bindpath.x64)\cpexec.dll"/> | 135 | <Binary Id="ComPlusCA_x64" SourceFile="!(bindpath.x64)complusca.dll"/> |
| 137 | <Binary Id="WixCPSched_x64" SourceFile="!(bindpath.x64)\cpsched.dll"/> | ||
| 138 | </Fragment> | 136 | </Fragment> |
| 139 | </Wix> | 137 | </Wix> |
diff --git a/src/wixlib/caerr.wxi b/src/wixlib/caerr.wxi new file mode 100644 index 00000000..141942f2 --- /dev/null +++ b/src/wixlib/caerr.wxi | |||
| @@ -0,0 +1,96 @@ | |||
| 1 | <Include> | ||
| 2 | <?define msierrSecureObjectsFailedCreateSD = 25520?> | ||
| 3 | <?define msierrSecureObjectsFailedSet = 25521?> | ||
| 4 | <?define msierrSecureObjectsUnknownType = 25522?> | ||
| 5 | <?define msierrXmlFileFailedRead = 25530?> | ||
| 6 | <?define msierrXmlFileFailedOpen = 25531?> | ||
| 7 | <?define msierrXmlFileFailedSelect = 25532?> | ||
| 8 | <?define msierrXmlFileFailedSave = 25533?> | ||
| 9 | <?define msierrXmlConfigFailedRead = 25540?> | ||
| 10 | <?define msierrXmlConfigFailedOpen = 25541?> | ||
| 11 | <?define msierrXmlConfigFailedSelect = 25542?> | ||
| 12 | <?define msierrXmlConfigFailedSave = 25543?> | ||
| 13 | <?define msierrFirewallCannotConnect = 25580?> | ||
| 14 | <?define msierrIISCannotConnect = 26001?> | ||
| 15 | <?define msierrIISFailedReadWebSite = 26002?> | ||
| 16 | <?define msierrIISFailedReadWebDirs = 26003?> | ||
| 17 | <?define msierrIISFailedReadVDirs = 26004?> | ||
| 18 | <?define msierrIISFailedReadFilters = 26005?> | ||
| 19 | <?define msierrIISFailedReadAppPool = 26006?> | ||
| 20 | <?define msierrIISFailedReadMimeMap = 26007?> | ||
| 21 | <?define msierrIISFailedReadProp = 26008?> | ||
| 22 | <?define msierrIISFailedReadWebSvcExt = 26009?> | ||
| 23 | <?define msierrIISFailedReadWebError = 26010?> | ||
| 24 | <?define msierrIISFailedReadHttpHeader = 26011?> | ||
| 25 | <?define msierrIISFailedSchedTransaction = 26031?> | ||
| 26 | <?define msierrIISFailedSchedInstallWebs = 26032?> | ||
| 27 | <?define msierrIISFailedSchedInstallWebDirs = 26033?> | ||
| 28 | <?define msierrIISFailedSchedInstallVDirs = 26034?> | ||
| 29 | <?define msierrIISFailedSchedInstallFilters = 26035?> | ||
| 30 | <?define msierrIISFailedSchedInstallAppPool = 26036?> | ||
| 31 | <?define msierrIISFailedSchedInstallProp = 26037?> | ||
| 32 | <?define msierrIISFailedSchedInstallWebSvcExt = 26038?> | ||
| 33 | <?define msierrIISFailedSchedUninstallWebs = 26051?> | ||
| 34 | <?define msierrIISFailedSchedUninstallWebDirs = 26052?> | ||
| 35 | <?define msierrIISFailedSchedUninstallVDirs = 26053?> | ||
| 36 | <?define msierrIISFailedSchedUninstallFilters = 26054?> | ||
| 37 | <?define msierrIISFailedSchedUninstallAppPool = 26055?> | ||
| 38 | <?define msierrIISFailedSchedUninstallProp = 26056?> | ||
| 39 | <?define msierrIISFailedSchedUninstallWebSvcExt = 26057?> | ||
| 40 | <?define msierrIISFailedStartTransaction = 26101?> | ||
| 41 | <?define msierrIISFailedOpenKey = 26102?> | ||
| 42 | <?define msierrIISFailedCreateKey = 26103?> | ||
| 43 | <?define msierrIISFailedWriteData = 26104?> | ||
| 44 | <?define msierrIISFailedCreateApp = 26105?> | ||
| 45 | <?define msierrIISFailedDeleteKey = 26106?> | ||
| 46 | <?define msierrIISFailedDeleteApp = 26107?> | ||
| 47 | <?define msierrIISFailedDeleteValue = 26108?> | ||
| 48 | <?define msierrIISFailedCommitInUse = 26109?> | ||
| 49 | <?define msierrSQLFailedCreateDatabase = 26201?> | ||
| 50 | <?define msierrSQLFailedDropDatabase = 26202?> | ||
| 51 | <?define msierrSQLFailedConnectDatabase = 26203?> | ||
| 52 | <?define msierrSQLFailedExecString = 26204?> | ||
| 53 | <?define msierrSQLDatabaseAlreadyExists = 26205?> | ||
| 54 | <?define msierrPERFMONFailedRegisterDLL = 26251?> | ||
| 55 | <?define msierrPERFMONFailedUnregisterDLL = 26252?> | ||
| 56 | <?define msierrInstallPerfCounterData = 26253?> | ||
| 57 | <?define msierrUninstallPerfCounterData = 26254?> | ||
| 58 | <?define msierrSMBFailedCreate = 26301?> | ||
| 59 | <?define msierrSMBFailedDrop = 26302?> | ||
| 60 | <?define msierrCERTFailedOpen = 26351?> | ||
| 61 | <?define msierrCERTFailedAdd = 26352?> | ||
| 62 | <?define msierrUSRFailedUserCreate = 26401?> | ||
| 63 | <?define msierrUSRFailedUserCreatePswd = 26402?> | ||
| 64 | <?define msierrUSRFailedUserGroupAdd = 26403?> | ||
| 65 | <?define msierrUSRFailedUserCreateExists = 26404?> | ||
| 66 | <?define msierrUSRFailedGrantLogonAsService = 26405?> | ||
| 67 | <?define msierrDependencyMissingDependencies = 26451?> | ||
| 68 | <?define msierrDependencyHasDependents = 26452?> | ||
| 69 | <?define msierrDotNetRuntimeRequired = 27000?> | ||
| 70 | <?define msierrComPlusCannotConnect = 28001?> | ||
| 71 | <?define msierrComPlusPartitionReadFailed = 28002?> | ||
| 72 | <?define msierrComPlusPartitionRoleReadFailed = 28003?> | ||
| 73 | <?define msierrComPlusUserInPartitionRoleReadFailed = 28004?> | ||
| 74 | <?define msierrComPlusPartitionUserReadFailed = 28005?> | ||
| 75 | <?define msierrComPlusApplicationReadFailed = 28006?> | ||
| 76 | <?define msierrComPlusApplicationRoleReadFailed = 28007?> | ||
| 77 | <?define msierrComPlusUserInApplicationRoleReadFailed = 28008?> | ||
| 78 | <?define msierrComPlusAssembliesReadFailed = 28009?> | ||
| 79 | <?define msierrComPlusSubscriptionReadFailed = 28010?> | ||
| 80 | <?define msierrComPlusPartitionDependency = 28011?> | ||
| 81 | <?define msierrComPlusPartitionNotFound = 28012?> | ||
| 82 | <?define msierrComPlusPartitionIdConflict = 28013?> | ||
| 83 | <?define msierrComPlusPartitionNameConflict = 28014?> | ||
| 84 | <?define msierrComPlusApplicationDependency = 28015?> | ||
| 85 | <?define msierrComPlusApplicationNotFound = 28016?> | ||
| 86 | <?define msierrComPlusApplicationIdConflict = 28017?> | ||
| 87 | <?define msierrComPlusApplicationNameConflict = 28018?> | ||
| 88 | <?define msierrComPlusApplicationRoleDependency = 28019?> | ||
| 89 | <?define msierrComPlusApplicationRoleNotFound = 28020?> | ||
| 90 | <?define msierrComPlusApplicationRoleConflict = 28021?> | ||
| 91 | <?define msierrComPlusAssemblyDependency = 28022?> | ||
| 92 | <?define msierrComPlusSubscriptionIdConflict = 28023?> | ||
| 93 | <?define msierrComPlusSubscriptionNameConflict = 28024?> | ||
| 94 | <?define msierrComPlusFailedLookupNames = 28025?> | ||
| 95 | <?define msierrMsmqCannotConnect = 28101?> | ||
| 96 | </Include> \ No newline at end of file | ||
diff --git a/src/wixlib/complus.wixproj b/src/wixlib/complus.wixproj new file mode 100644 index 00000000..2384eb47 --- /dev/null +++ b/src/wixlib/complus.wixproj | |||
| @@ -0,0 +1,36 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8" ?> | ||
| 2 | <!-- 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. --> | ||
| 3 | <Project DefaultTargets="Build" InitialTargets="EnsureWixToolsetInstalled" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="15.0"> | ||
| 4 | <Import Project="..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props" Condition="Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props')" /> | ||
| 5 | <Import Project="..\FindLocalWix.props" /> | ||
| 6 | <PropertyGroup> | ||
| 7 | <ProjectGuid>{E191E61E-E098-4F71-888F-51A79F952022}</ProjectGuid> | ||
| 8 | <OutputName>complus</OutputName> | ||
| 9 | <OutputType>Library</OutputType> | ||
| 10 | <BindFiles>true</BindFiles> | ||
| 11 | <SuppressSpecificWarnings>1086</SuppressSpecificWarnings> | ||
| 12 | </PropertyGroup> | ||
| 13 | |||
| 14 | <ItemGroup> | ||
| 15 | <Compile Include="ComPlusExtension.wxs" /> | ||
| 16 | <EmbeddedResource Include="en-us.wxl" /> | ||
| 17 | <EmbeddedResource Include="es-es.wxl" /> | ||
| 18 | <EmbeddedResource Include="ja-jp.wxl" /> | ||
| 19 | </ItemGroup> | ||
| 20 | <ItemGroup> | ||
| 21 | <None Include="packages.config" /> | ||
| 22 | </ItemGroup> | ||
| 23 | <Import Project="$(WixTargetsPath)" Condition=" '$(WixTargetsPath)' != '' AND Exists('$(WixTargetsPath)') " /> | ||
| 24 | <Import Project="$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets" Condition=" '$(WixTargetsPath)' == '' AND Exists('$(MSBuildExtensionsPath32)\Microsoft\WiX\v3.x\wix.targets') " /> | ||
| 25 | <Target Name="EnsureWixToolsetInstalled" Condition=" '$(WixTargetsImported)' != 'true' "> | ||
| 26 | <Error Text="WiX Toolset build tools (v4.0 or later) must be installed to build this project. To download the WiX Toolset, go to http://wixtoolset.org/releases/." /> | ||
| 27 | </Target> | ||
| 28 | <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> | ||
| 29 | <PropertyGroup> | ||
| 30 | <ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> | ||
| 31 | </PropertyGroup> | ||
| 32 | <Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets'))" /> | ||
| 33 | <Error Condition="!Exists('..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\WixToolset.MSBuild.4.0.0-build-0042\build\WixToolset.MSBuild.props'))" /> | ||
| 34 | </Target> | ||
| 35 | <Import Project="..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.1.65\build\Nerdbank.GitVersioning.targets')" /> | ||
| 36 | </Project> | ||
diff --git a/src/wixlib/packages.config b/src/wixlib/packages.config new file mode 100644 index 00000000..209dd820 --- /dev/null +++ b/src/wixlib/packages.config | |||
| @@ -0,0 +1,5 @@ | |||
| 1 | <?xml version="1.0" encoding="utf-8"?> | ||
| 2 | <packages> | ||
| 3 | <package id="Nerdbank.GitVersioning" version="2.1.65" developmentDependency="true" targetFramework="net40" /> | ||
| 4 | <package id="WixToolset.MSBuild" version="4.0.0-build-0042" developmentDependency="true" targetFramework="net40" /> | ||
| 5 | </packages> \ No newline at end of file | ||
