84 lines
2.5 KiB
C#
84 lines
2.5 KiB
C#
using System;
|
|
using System.Text;
|
|
|
|
namespace Kreta.Framework.Logging
|
|
{
|
|
/// <summary>
|
|
/// A napló alrendszer kivétele.
|
|
/// </summary>
|
|
public sealed class LogWriterException : Exception
|
|
{
|
|
private ILogMessage m_FailedLogMessage;
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="failedLogMessage">A sikertelen naplóbejegyzés</param>
|
|
public LogWriterException(ILogMessage failedLogMessage)
|
|
: this(failedLogMessage, null, null)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
public LogWriterException(string message)
|
|
: this(null, message, null)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
/// <param name="innerException">A belső kivétel</param>
|
|
public LogWriterException(string message, Exception innerException)
|
|
: this(null, message, innerException)
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="failedLogMessage">A sikertelen naplóbejegyzés</param>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
/// <param name="innerException">A belső kivétel</param>
|
|
public LogWriterException(ILogMessage failedLogMessage, string message, Exception innerException)
|
|
: base(message, innerException)
|
|
{
|
|
m_FailedLogMessage = failedLogMessage;
|
|
}
|
|
|
|
/// <summary>
|
|
/// A kivétel üzenete.
|
|
/// </summary>
|
|
public override string Message
|
|
{
|
|
get
|
|
{
|
|
if (m_FailedLogMessage == null)
|
|
{
|
|
return base.Message;
|
|
}
|
|
|
|
StringBuilder builder = new StringBuilder();
|
|
builder.AppendLine(base.Message);
|
|
builder.AppendLine("Failed message:");
|
|
builder.AppendLine(LogUtil.FormatMessage(m_FailedLogMessage, " | "));
|
|
return builder.ToString();
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// A sikertelen naplóbejegyzés.
|
|
/// </summary>
|
|
public ILogMessage FailedLogMessage
|
|
{
|
|
get
|
|
{
|
|
return m_FailedLogMessage;
|
|
}
|
|
}
|
|
}
|
|
}
|