// 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. namespace WixToolset.Harvesters.Extensibility { using WixToolset.Extensibility.Services; /// /// The WiX Toolset harvester core. /// public interface IHarvesterCore { /// /// /// IMessaging Messaging { get; set; } /// /// Gets or sets the value of the extension argument passed to heat. /// /// The extension argument. string ExtensionArgument { get; set; } /// /// Gets or sets the value of the root directory that is being harvested. /// /// The root directory being harvested. string RootDirectory { get; set; } /// /// Create an identifier based on passed file name /// /// File name to generate identifer from /// string CreateIdentifierFromFilename(string filename); /// /// Generate an identifier by hashing data from the row. /// /// Three letter or less prefix for generated row identifier. /// Information to hash. /// The generated identifier. string GenerateIdentifier(string prefix, params string[] args); /// /// Resolves a file's path if the Wix.File.Source value starts with "SourceDir\". /// /// The Wix.File.Source value with "SourceDir\". /// The full path of the file. string ResolveFilePath(string fileSource); } }