diff options
Diffstat (limited to 'src/wixext/UtilTableDefinitions.cs')
| -rw-r--r-- | src/wixext/UtilTableDefinitions.cs | 300 |
1 files changed, 300 insertions, 0 deletions
diff --git a/src/wixext/UtilTableDefinitions.cs b/src/wixext/UtilTableDefinitions.cs new file mode 100644 index 00000000..78f21ebc --- /dev/null +++ b/src/wixext/UtilTableDefinitions.cs | |||
| @@ -0,0 +1,300 @@ | |||
| 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.Util | ||
| 4 | { | ||
| 5 | using WixToolset.Data.WindowsInstaller; | ||
| 6 | |||
| 7 | public static class UtilTableDefinitions | ||
| 8 | { | ||
| 9 | public static readonly TableDefinition Wix4CloseApplication = new TableDefinition( | ||
| 10 | "Wix4CloseApplication", | ||
| 11 | new[] | ||
| 12 | { | ||
| 13 | new ColumnDefinition("Wix4CloseApplication", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token in table.", modularizeType: ColumnModularizeType.Column), | ||
| 14 | new ColumnDefinition("Target", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Name of executable to ensure is closed.", modularizeType: ColumnModularizeType.Property), | ||
| 15 | new ColumnDefinition("Description", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Description string displayed to user when executable is in use.", modularizeType: ColumnModularizeType.Property, forceLocalizable: true), | ||
| 16 | new ColumnDefinition("Condition", ColumnType.String, 0, primaryKey: false, nullable: true, ColumnCategory.Condition, description: "Optional expression which skips the closing.", modularizeType: ColumnModularizeType.Condition, forceLocalizable: true), | ||
| 17 | new ColumnDefinition("Attributes", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 2147483647, description: "A 32-bit word that specifies the attribute flags to be applied."), | ||
| 18 | new ColumnDefinition("Sequence", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, minValue: 1, maxValue: 2147483647, description: "Sequence to order the closings by."), | ||
| 19 | new ColumnDefinition("Property", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, description: "Optional property that is set to the number of running instances of the app.", modularizeType: ColumnModularizeType.Property, forceLocalizable: true), | ||
| 20 | new ColumnDefinition("TerminateExitCode", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, minValue: 0, maxValue: 2147483647, description: "Exit code to return from a terminated application."), | ||
| 21 | new ColumnDefinition("Timeout", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, minValue: 1, maxValue: 2147483647, description: "Timeout in milliseconds before scheduling restart or terminating application."), | ||
| 22 | }, | ||
| 23 | tupleDefinitionName: UtilTupleDefinitions.WixCloseApplication.Name, | ||
| 24 | tupleIdIsPrimaryKey: true | ||
| 25 | ); | ||
| 26 | |||
| 27 | public static readonly TableDefinition Wix4RemoveFolderEx = new TableDefinition( | ||
| 28 | "Wix4RemoveFolderEx", | ||
| 29 | new[] | ||
| 30 | { | ||
| 31 | new ColumnDefinition("Wix4RemoveFolderEx", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Identifier for the WixRemoveFolderEx row in the package.", modularizeType: ColumnModularizeType.Column), | ||
| 32 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 33 | new ColumnDefinition("Property", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, description: "Name of Property that contains the root of the directory tree to remove.", modularizeType: ColumnModularizeType.Property), | ||
| 34 | new ColumnDefinition("InstallMode", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 1, maxValue: 3, description: "1 == Remove only when the associated component is being installed (msiInstallStateLocal or msiInstallStateSource), 2 == Remove only when the associated component is being removed (msiInstallStateAbsent), 3 = Remove in either of the above cases."), | ||
| 35 | }, | ||
| 36 | tupleDefinitionName: UtilTupleDefinitions.WixRemoveFolderEx.Name, | ||
| 37 | tupleIdIsPrimaryKey: true | ||
| 38 | ); | ||
| 39 | |||
| 40 | public static readonly TableDefinition Wix4RestartResource = new TableDefinition( | ||
| 41 | "Wix4RestartResource", | ||
| 42 | new[] | ||
| 43 | { | ||
| 44 | new ColumnDefinition("Wix4RestartResource", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized identifier.", modularizeType: ColumnModularizeType.Column), | ||
| 45 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table used to determine install state.", modularizeType: ColumnModularizeType.Column), | ||
| 46 | new ColumnDefinition("Resource", ColumnType.String, 0, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The resource to be registered with the Restart Manager.", modularizeType: ColumnModularizeType.Property), | ||
| 47 | new ColumnDefinition("Attributes", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 2147483647, description: "A 32-bit word that specifies the type of resource and flags used for processing."), | ||
| 48 | }, | ||
| 49 | tupleDefinitionName: UtilTupleDefinitions.WixRestartResource.Name, | ||
| 50 | tupleIdIsPrimaryKey: true | ||
| 51 | ); | ||
| 52 | |||
| 53 | public static readonly TableDefinition Wix4FileShare = new TableDefinition( | ||
| 54 | "Wix4FileShare", | ||
| 55 | new[] | ||
| 56 | { | ||
| 57 | new ColumnDefinition("Wix4FileShare", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized identifier", modularizeType: ColumnModularizeType.Column), | ||
| 58 | new ColumnDefinition("ShareName", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The actual share name used"), | ||
| 59 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 60 | new ColumnDefinition("Description", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Description string displayed for the file share"), | ||
| 61 | new ColumnDefinition("Directory_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Directory", keyColumn: 1, description: "Foreign key referencing directory that the share is created on", modularizeType: ColumnModularizeType.Column), | ||
| 62 | }, | ||
| 63 | tupleDefinitionName: UtilTupleDefinitions.FileShare.Name, | ||
| 64 | tupleIdIsPrimaryKey: true | ||
| 65 | ); | ||
| 66 | |||
| 67 | public static readonly TableDefinition Wix4FileSharePermissions = new TableDefinition( | ||
| 68 | "Wix4FileSharePermissions", | ||
| 69 | new[] | ||
| 70 | { | ||
| 71 | new ColumnDefinition("Wix4FileShare_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "FileShare", keyColumn: 1, description: "FileShare that these premissions are to be applied to.", modularizeType: ColumnModularizeType.Column), | ||
| 72 | new ColumnDefinition("Wix4User_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Wix4User", description: "User that these premissions are to apply to.", modularizeType: ColumnModularizeType.Column), | ||
| 73 | new ColumnDefinition("Permissions", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, description: "Permissions int, as in EXPLICIT_ACCESS.grfAccessPermissions in MSDN"), | ||
| 74 | }, | ||
| 75 | tupleDefinitionName: UtilTupleDefinitions.FileSharePermissions.Name, | ||
| 76 | tupleIdIsPrimaryKey: false | ||
| 77 | ); | ||
| 78 | |||
| 79 | public static readonly TableDefinition Wix4Group = new TableDefinition( | ||
| 80 | "Wix4Group", | ||
| 81 | new[] | ||
| 82 | { | ||
| 83 | new ColumnDefinition("Wix4Group", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 84 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Text, keyTable: "Component", keyColumn: 1, description: "Foreign key, Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 85 | new ColumnDefinition("Name", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Group name", modularizeType: ColumnModularizeType.Property), | ||
| 86 | new ColumnDefinition("Domain", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Group domain", modularizeType: ColumnModularizeType.Property), | ||
| 87 | }, | ||
| 88 | tupleDefinitionName: UtilTupleDefinitions.Group.Name, | ||
| 89 | tupleIdIsPrimaryKey: true | ||
| 90 | ); | ||
| 91 | |||
| 92 | public static readonly TableDefinition Wix4InternetShortcut = new TableDefinition( | ||
| 93 | "Wix4InternetShortcut", | ||
| 94 | new[] | ||
| 95 | { | ||
| 96 | new ColumnDefinition("Wix4InternetShortcut", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token in table.", modularizeType: ColumnModularizeType.Column), | ||
| 97 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Text, keyTable: "Component", keyColumn: 1, description: "Foreign key, Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 98 | new ColumnDefinition("Directory_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Directory", keyColumn: 1, description: "Foreign key referencing directory that the shortcut is created in", modularizeType: ColumnModularizeType.Column), | ||
| 99 | new ColumnDefinition("Name", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Name used for shortcut.", modularizeType: ColumnModularizeType.Property), | ||
| 100 | new ColumnDefinition("Target", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Text, description: "URL target."), | ||
| 101 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, description: "Attribute flags that control how the shortcut is created."), | ||
| 102 | new ColumnDefinition("IconFile", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Icon file for shortcut"), | ||
| 103 | new ColumnDefinition("IconIndex", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Index of the icon being referenced."), | ||
| 104 | }, | ||
| 105 | tupleDefinitionName: UtilTupleDefinitions.WixInternetShortcut.Name, | ||
| 106 | tupleIdIsPrimaryKey: true | ||
| 107 | ); | ||
| 108 | |||
| 109 | public static readonly TableDefinition Wix4PerformanceCategory = new TableDefinition( | ||
| 110 | "Wix4PerformanceCategory", | ||
| 111 | new[] | ||
| 112 | { | ||
| 113 | new ColumnDefinition("Wix4PerformanceCategory", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token in table.", modularizeType: ColumnModularizeType.Column), | ||
| 114 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 115 | new ColumnDefinition("Name", ColumnType.String, 80, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Name of the performance counter category."), | ||
| 116 | new ColumnDefinition("IniData", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Data that goes into the performance counter .ini file."), | ||
| 117 | new ColumnDefinition("ConstantData", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Data that goes into the performance counter .h file."), | ||
| 118 | }, | ||
| 119 | tupleDefinitionName: UtilTupleDefinitions.PerformanceCategory.Name, | ||
| 120 | tupleIdIsPrimaryKey: true | ||
| 121 | ); | ||
| 122 | |||
| 123 | public static readonly TableDefinition Wix4Perfmon = new TableDefinition( | ||
| 124 | "Wix4Perfmon", | ||
| 125 | new[] | ||
| 126 | { | ||
| 127 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 128 | new ColumnDefinition("File", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Formatted, description: "Name of .INI file", modularizeType: ColumnModularizeType.Property), | ||
| 129 | new ColumnDefinition("Name", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Text, description: "Service name in registry"), | ||
| 130 | }, | ||
| 131 | tupleDefinitionName: UtilTupleDefinitions.Perfmon.Name, | ||
| 132 | tupleIdIsPrimaryKey: false | ||
| 133 | ); | ||
| 134 | |||
| 135 | public static readonly TableDefinition Wix4PerfmonManifest = new TableDefinition( | ||
| 136 | "Wix4PerfmonManifest", | ||
| 137 | new[] | ||
| 138 | { | ||
| 139 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 140 | new ColumnDefinition("File", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Formatted, description: "Name of perfmon manifest file", modularizeType: ColumnModularizeType.Property), | ||
| 141 | new ColumnDefinition("ResourceFileDirectory", ColumnType.String, 255, primaryKey: true, nullable: false, ColumnCategory.Formatted, description: "The path of the Resource File Directory"), | ||
| 142 | }, | ||
| 143 | tupleDefinitionName: UtilTupleDefinitions.PerfmonManifest.Name, | ||
| 144 | tupleIdIsPrimaryKey: false | ||
| 145 | ); | ||
| 146 | |||
| 147 | public static readonly TableDefinition Wix4EventManifest = new TableDefinition( | ||
| 148 | "Wix4EventManifest", | ||
| 149 | new[] | ||
| 150 | { | ||
| 151 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 152 | new ColumnDefinition("File", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Formatted, description: "Name of event manifest file", modularizeType: ColumnModularizeType.Property), | ||
| 153 | }, | ||
| 154 | tupleDefinitionName: UtilTupleDefinitions.EventManifest.Name, | ||
| 155 | tupleIdIsPrimaryKey: false | ||
| 156 | ); | ||
| 157 | |||
| 158 | public static readonly TableDefinition Wix4SecureObject = new TableDefinition( | ||
| 159 | "Wix4SecureObject", | ||
| 160 | new[] | ||
| 161 | { | ||
| 162 | new ColumnDefinition("Wix4SecureObject", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token in Table", modularizeType: ColumnModularizeType.Column), | ||
| 163 | new ColumnDefinition("Table", ColumnType.String, 32, primaryKey: true, nullable: false, ColumnCategory.Text, description: "Table SecureObject should be securing"), | ||
| 164 | new ColumnDefinition("Domain", ColumnType.String, 255, primaryKey: true, nullable: true, ColumnCategory.Text, description: "Domain half of user account to secure", modularizeType: ColumnModularizeType.Property), | ||
| 165 | new ColumnDefinition("User", ColumnType.String, 255, primaryKey: true, nullable: false, ColumnCategory.Text, description: "User name half of user account to secure", modularizeType: ColumnModularizeType.Property), | ||
| 166 | new ColumnDefinition("Permission", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, minValue: -2147483647, maxValue: 2147483647, description: "Permissions to grant to User"), | ||
| 167 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 168 | }, | ||
| 169 | tupleDefinitionName: UtilTupleDefinitions.SecureObjects.Name, | ||
| 170 | tupleIdIsPrimaryKey: false | ||
| 171 | ); | ||
| 172 | |||
| 173 | public static readonly TableDefinition Wix4ServiceConfig = new TableDefinition( | ||
| 174 | "Wix4ServiceConfig", | ||
| 175 | new[] | ||
| 176 | { | ||
| 177 | new ColumnDefinition("ServiceName", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Formatted, description: "Primary key, non-localized token"), | ||
| 178 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key, Component used to determine install state ", modularizeType: ColumnModularizeType.Column), | ||
| 179 | new ColumnDefinition("NewService", ColumnType.Number, 1, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 1, description: "Whether the affected service is being installed or already exists."), | ||
| 180 | new ColumnDefinition("FirstFailureActionType", ColumnType.String, 32, primaryKey: false, nullable: false, ColumnCategory.Text, description: "First failure action type for configured service to take."), | ||
| 181 | new ColumnDefinition("SecondFailureActionType", ColumnType.String, 32, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Second failure action type for configured service to take."), | ||
| 182 | new ColumnDefinition("ThirdFailureActionType", ColumnType.String, 32, primaryKey: false, nullable: false, ColumnCategory.Text, description: "Third failure action type for configured service to take."), | ||
| 183 | new ColumnDefinition("ResetPeriodInDays", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Integer, minValue: 0, description: "Period after which to reset the failure count for the service."), | ||
| 184 | new ColumnDefinition("RestartServiceDelayInSeconds", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Integer, minValue: 0, description: "Period after which to restart the service after a given failure."), | ||
| 185 | new ColumnDefinition("ProgramCommandLine", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "Command line for program to run if failure action is RUN_COMMAND."), | ||
| 186 | new ColumnDefinition("RebootMessage", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Text, description: "Message to show to users when rebooting if failure action is REBOOT."), | ||
| 187 | }, | ||
| 188 | tupleDefinitionName: UtilTupleDefinitions.ServiceConfig.Name, | ||
| 189 | tupleIdIsPrimaryKey: false | ||
| 190 | ); | ||
| 191 | |||
| 192 | public static readonly TableDefinition Wix4TouchFile = new TableDefinition( | ||
| 193 | "Wix4TouchFile", | ||
| 194 | new[] | ||
| 195 | { | ||
| 196 | new ColumnDefinition("Wix4TouchFile", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Identifier for the Wix4TouchFile row in the package.", modularizeType: ColumnModularizeType.Column), | ||
| 197 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 198 | new ColumnDefinition("Path", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "Formatted column that resolves to the path to touch.", modularizeType: ColumnModularizeType.Property), | ||
| 199 | new ColumnDefinition("Attributes", ColumnType.Number, 2, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 1, maxValue: 63, description: "1 == Touch only when the associated component is being installed, 2 == Touch only when the associated component is being repaired , 4 == Touch only when the associated component is being removed, 16 = path is in 64-bit location, 32 = touching the file is vital."), | ||
| 200 | }, | ||
| 201 | tupleDefinitionName: UtilTupleDefinitions.WixTouchFile.Name, | ||
| 202 | tupleIdIsPrimaryKey: true | ||
| 203 | ); | ||
| 204 | |||
| 205 | public static readonly TableDefinition Wix4User = new TableDefinition( | ||
| 206 | "Wix4User", | ||
| 207 | new[] | ||
| 208 | { | ||
| 209 | new ColumnDefinition("Wix4User", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token", modularizeType: ColumnModularizeType.Column), | ||
| 210 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: true, ColumnCategory.Text, keyTable: "Component", keyColumn: 1, description: "Foreign key, Component used to determine install state", modularizeType: ColumnModularizeType.Column), | ||
| 211 | new ColumnDefinition("Name", ColumnType.String, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "User name", modularizeType: ColumnModularizeType.Property), | ||
| 212 | new ColumnDefinition("Domain", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "User domain", modularizeType: ColumnModularizeType.Property), | ||
| 213 | new ColumnDefinition("Password", ColumnType.String, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "User password", modularizeType: ColumnModularizeType.Property), | ||
| 214 | new ColumnDefinition("Attributes", ColumnType.Number, 4, primaryKey: false, nullable: true, ColumnCategory.Unknown, minValue: 0, maxValue: 65535, description: "Attributes describing how to create the user"), | ||
| 215 | }, | ||
| 216 | tupleDefinitionName: UtilTupleDefinitions.User.Name, | ||
| 217 | tupleIdIsPrimaryKey: true | ||
| 218 | ); | ||
| 219 | |||
| 220 | public static readonly TableDefinition Wix4UserGroup = new TableDefinition( | ||
| 221 | "Wix4UserGroup", | ||
| 222 | new[] | ||
| 223 | { | ||
| 224 | new ColumnDefinition("Wix4User_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Wix4User", keyColumn: 1, description: "User to be joined to a Group.", modularizeType: ColumnModularizeType.Column), | ||
| 225 | new ColumnDefinition("Wix4Group_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Wix4Group", keyColumn: 1, description: "Group to join User to.", modularizeType: ColumnModularizeType.Column), | ||
| 226 | }, | ||
| 227 | tupleDefinitionName: UtilTupleDefinitions.UserGroup.Name, | ||
| 228 | tupleIdIsPrimaryKey: false | ||
| 229 | ); | ||
| 230 | |||
| 231 | public static readonly TableDefinition Wix4XmlFile = new TableDefinition( | ||
| 232 | "Wix4XmlFile", | ||
| 233 | new[] | ||
| 234 | { | ||
| 235 | new ColumnDefinition("Wix4XmlFile", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token.", modularizeType: ColumnModularizeType.Column), | ||
| 236 | new ColumnDefinition("File", ColumnType.Localized, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The .XML file in which to write the information", modularizeType: ColumnModularizeType.Property), | ||
| 237 | new ColumnDefinition("ElementPath", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The .XML file element to modify.", modularizeType: ColumnModularizeType.Property), | ||
| 238 | new ColumnDefinition("Name", ColumnType.Localized, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The .XML file node to set/add in the element.", modularizeType: ColumnModularizeType.Property), | ||
| 239 | new ColumnDefinition("Value", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The value to be written.", modularizeType: ColumnModularizeType.Property), | ||
| 240 | new ColumnDefinition("Flags", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 70143, description: "Flags"), | ||
| 241 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table referencing component that controls the installing of the .XML value.", modularizeType: ColumnModularizeType.Column), | ||
| 242 | new ColumnDefinition("Sequence", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Order to execute the XML modifications."), | ||
| 243 | }, | ||
| 244 | tupleDefinitionName: UtilTupleDefinitions.XmlFile.Name, | ||
| 245 | tupleIdIsPrimaryKey: true | ||
| 246 | ); | ||
| 247 | |||
| 248 | public static readonly TableDefinition Wix4XmlConfig = new TableDefinition( | ||
| 249 | "Wix4XmlConfig", | ||
| 250 | new[] | ||
| 251 | { | ||
| 252 | new ColumnDefinition("Wix4XmlConfig", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, description: "Primary key, non-localized token.", modularizeType: ColumnModularizeType.Column), | ||
| 253 | new ColumnDefinition("File", ColumnType.Localized, 255, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The .XML file in which to write the information", modularizeType: ColumnModularizeType.Property), | ||
| 254 | new ColumnDefinition("ElementPath", ColumnType.Localized, 0, primaryKey: false, nullable: false, ColumnCategory.Formatted, description: "The XPATH query for an element to modify or add children to. Can also be a foreign key reference to another Wix4XmlConfig row if no attributes are set and the row referenced is a create element row.", modularizeType: ColumnModularizeType.Property), | ||
| 255 | new ColumnDefinition("VerifyPath", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The XPATH query run from ElementPath to verify whether a repair is necessary. Also used to uninstall.", modularizeType: ColumnModularizeType.Property), | ||
| 256 | new ColumnDefinition("Name", ColumnType.Localized, 255, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The .XML file node to set/add in the element.", modularizeType: ColumnModularizeType.Property), | ||
| 257 | new ColumnDefinition("Value", ColumnType.Localized, 0, primaryKey: false, nullable: true, ColumnCategory.Formatted, description: "The value to be written.", modularizeType: ColumnModularizeType.Property), | ||
| 258 | new ColumnDefinition("Flags", ColumnType.Number, 4, primaryKey: false, nullable: false, ColumnCategory.Unknown, minValue: 0, maxValue: 65536, description: "Element=1,Value=2,Document=4,Create=16,Delete=32,Install=256,Uninstall=512"), | ||
| 259 | new ColumnDefinition("Component_", ColumnType.String, 72, primaryKey: false, nullable: false, ColumnCategory.Identifier, keyTable: "Component", keyColumn: 1, description: "Foreign key into the Component table referencing component that controls the installing of the .XML value.", modularizeType: ColumnModularizeType.Column), | ||
| 260 | new ColumnDefinition("Sequence", ColumnType.Number, 2, primaryKey: false, nullable: true, ColumnCategory.Unknown, description: "Order to execute the XML modifications."), | ||
| 261 | }, | ||
| 262 | tupleDefinitionName: UtilTupleDefinitions.XmlConfig.Name, | ||
| 263 | tupleIdIsPrimaryKey: true | ||
| 264 | ); | ||
| 265 | |||
| 266 | public static readonly TableDefinition Wix4FormatFile = new TableDefinition( | ||
| 267 | "Wix4FormatFile", | ||
| 268 | new[] | ||
| 269 | { | ||
| 270 | new ColumnDefinition("Binary_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "Binary", keyColumn: 1, description: "Binary data to be formatted.", modularizeType: ColumnModularizeType.Column), | ||
| 271 | new ColumnDefinition("File_", ColumnType.String, 72, primaryKey: true, nullable: false, ColumnCategory.Identifier, keyTable: "File", keyColumn: 1, description: "File whose component controls the custom action and where the formatted data is written.", modularizeType: ColumnModularizeType.Column), | ||
| 272 | }, | ||
| 273 | tupleDefinitionName: UtilTupleDefinitions.WixFormatFiles.Name, | ||
| 274 | tupleIdIsPrimaryKey: false | ||
| 275 | ); | ||
| 276 | |||
| 277 | public static readonly TableDefinition[] All = new[] | ||
| 278 | { | ||
| 279 | Wix4CloseApplication, | ||
| 280 | Wix4RemoveFolderEx, | ||
| 281 | Wix4RestartResource, | ||
| 282 | Wix4FileShare, | ||
| 283 | Wix4FileSharePermissions, | ||
| 284 | Wix4Group, | ||
| 285 | Wix4InternetShortcut, | ||
| 286 | Wix4PerformanceCategory, | ||
| 287 | Wix4Perfmon, | ||
| 288 | Wix4PerfmonManifest, | ||
| 289 | Wix4EventManifest, | ||
| 290 | Wix4SecureObject, | ||
| 291 | Wix4ServiceConfig, | ||
| 292 | Wix4TouchFile, | ||
| 293 | Wix4User, | ||
| 294 | Wix4UserGroup, | ||
| 295 | Wix4XmlFile, | ||
| 296 | Wix4XmlConfig, | ||
| 297 | Wix4FormatFile, | ||
| 298 | }; | ||
| 299 | } | ||
| 300 | } | ||
