/// <summary> /// Gets the library associated with this extension. /// </summary> /// <param name="tableDefinitions">The table definitions to use while loading the library.</param> /// <returns>The loaded library.</returns> public override Library GetLibrary(TableDefinitionCollection tableDefinitions) { if (null == this.library) { this.library = LoadLibraryHelper(Assembly.GetExecutingAssembly(), "Microsoft.Tools.WindowsInstallerXml.Extensions.Data.DirectX.wixlib", tableDefinitions); } return this.library; }
/// <summary> /// Gets the table definitions stored in this assembly. /// </summary> /// <returns>Table definition collection for tables stored in this assembly.</returns> internal static TableDefinitionCollection GetTableDefinitions() { if (null == tableDefinitions) { Assembly assembly = Assembly.GetExecutingAssembly(); XmlReader tableDefinitionsReader = null; try { tableDefinitionsReader = new XmlTextReader(assembly.GetManifestResourceStream("Microsoft.Tools.WindowsInstallerXml.Data.tables.xml")); #if DEBUG tableDefinitions = TableDefinitionCollection.Load(tableDefinitionsReader, false); #else tableDefinitions = TableDefinitionCollection.Load(tableDefinitionsReader, true); #endif } finally { if (null != tableDefinitionsReader) { tableDefinitionsReader.Close(); } } } return tableDefinitions.Clone(); }
/// <summary> /// Gets the library associated with this extension. /// </summary> /// <param name="tableDefinitions">The table definitions to use while loading the library.</param> /// <returns>The loaded library.</returns> public override Library GetLibrary(TableDefinitionCollection tableDefinitions) { return(CfgExtensionData.GetExtensionLibrary(tableDefinitions)); }
private Localizer InitializeLocalization(TableDefinitionCollection tableDefinitions) { Localizer localizer = null; // Instantiate the localizer and load any localization files. if (!this.commandLine.SuppressLocalization || 0 < this.commandLine.LocalizationFiles.Count || null != this.commandLine.Cultures || !this.commandLine.OutputXml) { List <Localization> localizations = new List <Localization>(); // Load each localization file. foreach (string localizationFile in this.commandLine.LocalizationFiles) { Localization localization = Localizer.ParseLocalizationFile(localizationFile, tableDefinitions); if (null != localization) { localizations.Add(localization); } } localizer = new Localizer(); if (null != this.commandLine.Cultures) { // Alocalizations in order specified in cultures. foreach (string culture in this.commandLine.Cultures) { foreach (Localization localization in localizations) { if (culture.Equals(localization.Culture, StringComparison.OrdinalIgnoreCase)) { localizer.AddLocalization(localization); } } } } else // no cultures specified, so try neutral culture and if none of those add all loc files. { bool neutralFound = false; foreach (Localization localization in localizations) { if (String.IsNullOrEmpty(localization.Culture)) { // If a neutral wxl was provided use it. localizer.AddLocalization(localization); neutralFound = true; } } if (!neutralFound) { // No cultures were specified and no neutral wxl are available, include all of the loc files. foreach (Localization localization in localizations) { localizer.AddLocalization(localization); } } } // Load localizations provided by extensions with data. foreach (IExtensionData data in this.extensionData) { Library library = data.GetLibrary(tableDefinitions); if (null != library) { // Load the extension's default culture if it provides one and no cultures were specified. string[] extensionCultures = this.commandLine.Cultures; if (null == extensionCultures && null != data.DefaultCulture) { extensionCultures = new string[] { data.DefaultCulture }; } AddLibraryLocalizationsToLocalizer(library, extensionCultures, localizer); } } } return(localizer); }
/// <summary> /// Get the extensions library to be removed. /// </summary> /// <param name="tableDefinitions">Table definitions for library.</param> /// <returns>Library to remove from decompiled output.</returns> public override Library GetLibraryToRemove(TableDefinitionCollection tableDefinitions) { return(DependencyExtensionData.GetExtensionLibrary(tableDefinitions)); }
public override Library GetLibrary(TableDefinitionCollection tableDefinitions) { return(_library ?? (_library = LoadLibraryHelper(System.Reflection.Assembly.GetExecutingAssembly(), "TextReplace.Resources.TextReplace.WixLib.wixlib", tableDefinitions))); }
public bool TryAddSymbolToMatchingTableDefinitions(IntermediateSection section, IntermediateSymbol symbol, WindowsInstallerData data, TableDefinitionCollection tableDefinitions) { var tableDefinition = tableDefinitions.FirstOrDefault(t => t.SymbolDefinition?.Name == symbol.Definition.Name); if (tableDefinition == null) { return(false); } var row = this.CreateRow(section, symbol, data, tableDefinition); var rowOffset = 0; if (tableDefinition.SymbolIdIsPrimaryKey) { row[0] = symbol.Id.Id; rowOffset = 1; } for (var i = 0; i < symbol.Fields.Length; ++i) { if (i < tableDefinition.Columns.Length) { var column = tableDefinition.Columns[i + rowOffset]; switch (column.Type) { case ColumnType.Number: row[i + rowOffset] = column.Nullable ? symbol.AsNullableNumber(i) : symbol.AsNumber(i); break; default: row[i + rowOffset] = symbol.AsString(i); break; } } } return(true); }
/// <summary> /// Get the extensions library to be removed. /// </summary> /// <param name="tableDefinitions">Table definitions for library.</param> /// <returns>Library to remove from decompiled output.</returns> public override Library GetLibraryToRemove(TableDefinitionCollection tableDefinitions) { return(removeLibraryRows ? UIExtensionData.GetExtensionLibrary(tableDefinitions) : null); }
/// <summary> /// Internal mechanism to access the extension's library. /// </summary> /// <returns>Extension's library.</returns> internal static Library GetExtensionLibrary(TableDefinitionCollection tableDefinitions) { return(ExtensionData.LoadLibraryHelper(Assembly.GetExecutingAssembly(), "WixToolset.Extensions.Data.ps.wixlib", tableDefinitions)); }
public CreateOutputFromIRCommand(IntermediateSection section, TableDefinitionCollection tableDefinitions, IEnumerable <IWindowsInstallerBackendBinderExtension> backendExtensions) { this.Section = section; this.TableDefinitions = tableDefinitions; this.BackendExtensions = backendExtensions; }
public CreateInstanceTransformsCommand(IntermediateSection section, WindowsInstallerData output, TableDefinitionCollection tableDefinitions, IBackendHelper backendHelper) { this.Section = section; this.Output = output; this.TableDefinitions = tableDefinitions; this.BackendHelper = backendHelper; }
public UpdateTransformsWithFileFacades(IMessaging messaging, WindowsInstallerData output, IEnumerable <SubStorage> subStorages, TableDefinitionCollection tableDefinitions, IEnumerable <IFileFacade> fileFacades) { this.Messaging = messaging; this.Output = output; this.SubStorages = subStorages; this.TableDefinitions = tableDefinitions; this.FileFacades = fileFacades; }
public PanelSwWixUnbinder(TableDefinitionCollection tableDefinitions) { tableDefinitions_ = tableDefinitions; }