| 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.Data.Symbols |
| 4 | { |
| 5 | using System; |
| 6 | |
| 7 | /// <summary> |
| 8 | /// Summary information values for the CharCount property in transforms. |
| 9 | /// </summary> |
| 10 | [Flags] |
| 11 | public enum TransformFlags |
| 12 | { |
| 13 | /// <summary>Ignore error when adding a row that exists.</summary> |
| 14 | ErrorAddExistingRow = 0x1, |
| 15 | |
| 16 | /// <summary>Ignore error when deleting a row that does not exist.</summary> |
| 17 | ErrorDeleteMissingRow = 0x2, |
| 18 | |
| 19 | /// <summary>Ignore error when adding a table that exists. </summary> |
| 20 | ErrorAddExistingTable = 0x4, |
| 21 | |
| 22 | /// <summary>Ignore error when deleting a table that does not exist. </summary> |
| 23 | ErrorDeleteMissingTable = 0x8, |
| 24 | |
| 25 | /// <summary>Ignore error when updating a row that does not exist. </summary> |
| 26 | ErrorUpdateMissingRow = 0x10, |
| 27 | |
| 28 | /// <summary>Ignore error when transform and database code pages do not match, and their code pages are neutral.</summary> |
| 29 | ErrorChangeCodePage = 0x20, |
| 30 | |
| 31 | /// <summary>Default language must match base database. </summary> |
| 32 | ValidateLanguage = 0x10000, |
| 33 | |
| 34 | /// <summary>Product must match base database.</summary> |
| 35 | ValidateProduct = 0x20000, |
| 36 | |
| 37 | /// <summary>Check major version only. </summary> |
| 38 | ValidateMajorVersion = 0x80000, |
| 39 | |
| 40 | /// <summary>Check major and minor versions only. </summary> |
| 41 | ValidateMinorVersion = 0x100000, |
| 42 | |
| 43 | /// <summary>Check major, minor, and update versions.</summary> |
| 44 | ValidateUpdateVersion = 0x200000, |
| 45 | |
| 46 | /// <summary>Installed version lt base version. </summary> |
| 47 | ValidateNewLessBaseVersion = 0x400000, |
| 48 | |
| 49 | /// <summary>Installed version lte base version. </summary> |
| 50 | ValidateNewLessEqualBaseVersion = 0x800000, |
| 51 | |
| 52 | /// <summary>Installed version eq base version. </summary> |
| 53 | ValidateNewEqualBaseVersion = 0x1000000, |
| 54 | |
| 55 | /// <summary>Installed version gte base version.</summary> |
| 56 | ValidateNewGreaterEqualBaseVersion = 0x2000000, |
| 57 | |
| 58 | /// <summary>Installed version gt base version.</summary> |
| 59 | ValidateNewGreaterBaseVersion = 0x4000000, |
| 60 | |
| 61 | /// <summary>UpgradeCode must match base database.</summary> |
| 62 | ValidateUpgradeCode = 0x8000000, |
| 63 | |
| 64 | /// <summary>Masks all version checks on ProductVersion.</summary> |
| 65 | ProductVersionMask = ValidateMajorVersion | ValidateMinorVersion | ValidateUpdateVersion, |
| 66 | |
| 67 | /// <summary>Masks all operations on ProductVersion.</summary> |
| 68 | ProductVersionOperatorMask = ValidateNewLessBaseVersion | ValidateNewLessEqualBaseVersion | ValidateNewEqualBaseVersion | ValidateNewGreaterEqualBaseVersion | ValidateNewGreaterBaseVersion, |
| 69 | |
| 70 | /// <summary>Default value for instance transforms.</summary> |
| 71 | InstanceTransformDefault = ErrorAddExistingRow | ErrorDeleteMissingRow | ErrorAddExistingTable | ErrorDeleteMissingTable | ErrorUpdateMissingRow | ErrorChangeCodePage | ValidateProduct | ValidateUpdateVersion | ValidateNewGreaterEqualBaseVersion, |
| 72 | |
| 73 | /// <summary>Default value for language transforms.</summary> |
| 74 | LanguageTransformDefault = ErrorAddExistingRow | ErrorDeleteMissingRow | ErrorAddExistingTable | ErrorDeleteMissingTable | ErrorUpdateMissingRow | ErrorChangeCodePage | ValidateProduct, |
| 75 | |
| 76 | /// <summary>Default value for patch transforms.</summary> |
| 77 | PatchTransformDefault = ErrorAddExistingRow | ErrorDeleteMissingRow | ErrorAddExistingTable | ErrorDeleteMissingTable | ErrorUpdateMissingRow | ValidateProduct | ValidateUpdateVersion | ValidateNewEqualBaseVersion | ValidateUpgradeCode, |
| 78 | } |
| 79 | } |