// 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.Extensibility
{
using WixToolset.Data;
using WixToolset.Extensibility.Data;
using WixToolset.Extensibility.Services;
///
/// Base class for creating a resolver extension.
///
public abstract class BaseResolverExtension : IResolverExtension
{
///
/// Context for use by the extension.
///
protected IResolveContext Context { get; private set; }
///
/// Messaging for use by the extension.
///
protected IMessaging Messaging { get; private set; }
///
/// Called at the beginning of the resolving variables and files.
///
public virtual void PreResolve(IResolveContext context)
{
this.Context = context;
this.Messaging = context.ServiceProvider.GetService();
}
public virtual string ResolveFile(string source, IntermediateTupleDefinition tupleDefinition, SourceLineNumber sourceLineNumbers, BindStage bindStage)
{
return null;
}
///
/// Called at the end of resolve.
///
public virtual void PostResolve(ResolveResult result)
{
}
}
}