mirror of
https://github.com/lidarr/lidarr.git
synced 2025-07-13 00:23:59 -07:00
added better db migration support than what Subsonic provides out of the box.
This commit is contained in:
parent
180da4c82a
commit
ce63f05512
91 changed files with 7218 additions and 48 deletions
|
@ -0,0 +1,93 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
||||
namespace Migrator.Framework.Loggers
|
||||
{
|
||||
public class SqlScriptFileLogger : ILogger, IDisposable
|
||||
{
|
||||
private readonly ILogger _innerLogger;
|
||||
private TextWriter _streamWriter;
|
||||
|
||||
public SqlScriptFileLogger(ILogger logger, TextWriter streamWriter)
|
||||
{
|
||||
_innerLogger = logger;
|
||||
_streamWriter = streamWriter;
|
||||
}
|
||||
|
||||
#region IDisposable Members
|
||||
|
||||
public void Dispose()
|
||||
{
|
||||
if (_streamWriter != null)
|
||||
{
|
||||
_streamWriter.Dispose();
|
||||
_streamWriter = null;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
public void Log(string format, params object[] args)
|
||||
{
|
||||
_innerLogger.Log(format, args);
|
||||
}
|
||||
|
||||
public void Warn(string format, params object[] args)
|
||||
{
|
||||
_innerLogger.Warn(format, args);
|
||||
}
|
||||
|
||||
public void Trace(string format, params object[] args)
|
||||
{
|
||||
_innerLogger.Trace(format, args);
|
||||
}
|
||||
|
||||
public void ApplyingDBChange(string sql)
|
||||
{
|
||||
_innerLogger.ApplyingDBChange(sql);
|
||||
_streamWriter.WriteLine(sql);
|
||||
}
|
||||
|
||||
public void Started(List<long> appliedVersions, long finalVersion)
|
||||
{
|
||||
_innerLogger.Started(appliedVersions, finalVersion);
|
||||
}
|
||||
|
||||
public void MigrateUp(long version, string migrationName)
|
||||
{
|
||||
_innerLogger.MigrateUp(version, migrationName);
|
||||
}
|
||||
|
||||
public void MigrateDown(long version, string migrationName)
|
||||
{
|
||||
_innerLogger.MigrateDown(version, migrationName);
|
||||
}
|
||||
|
||||
public void Skipping(long version)
|
||||
{
|
||||
_innerLogger.Skipping(version);
|
||||
}
|
||||
|
||||
public void RollingBack(long originalVersion)
|
||||
{
|
||||
_innerLogger.RollingBack(originalVersion);
|
||||
}
|
||||
|
||||
public void Exception(long version, string migrationName, Exception ex)
|
||||
{
|
||||
_innerLogger.Exception(version, migrationName, ex);
|
||||
}
|
||||
|
||||
public void Exception(string message, Exception ex)
|
||||
{
|
||||
_innerLogger.Exception(message, ex);
|
||||
}
|
||||
|
||||
public void Finished(List<long> appliedVersions, long currentVersion)
|
||||
{
|
||||
_innerLogger.Finished(appliedVersions, currentVersion);
|
||||
_streamWriter.Close();
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue