using System;
using Microsoft.Extensions.Logging;
namespace Jellyfin.Server.Migrations
{
///
/// Interface that descibes a migration routine.
///
internal interface IUpdater
{
///
/// Gets maximum version this Updater applies to.
/// If current version is greater or equal to it, skip the updater.
///
public abstract Version Maximum { get; }
///
/// Execute the migration from version "from".
///
/// Host that hosts current version.
/// Host logger.
/// Version to migrate from.
/// Whether configuration was changed.
public abstract bool Perform(CoreAppHost host, ILogger logger, Version from);
}
}