81 lines
3.3 KiB
C#
81 lines
3.3 KiB
C#
using System;
|
|
using System.Runtime.Serialization;
|
|
using Kreta.Framework.Localization;
|
|
using Kreta.Framework.Logging;
|
|
|
|
namespace Kreta.Framework.Entities
|
|
{
|
|
/// <summary>
|
|
/// Érvénytelen entitás attribútumot jelző kivétel.
|
|
/// </summary>
|
|
[FriendlyName(1000027, "Az entitás érvénytelen attribútummal rendelkezik: a(z) {AttributeName} {Error}.")]
|
|
[ErrorCode(Events.ENTITY_INVALIDDATA)]
|
|
[Serializable]
|
|
public sealed class InvalidEntityAttributeException : EntityException
|
|
{
|
|
const string _errorMessage = "The entity has invalid attribute: {AttributeName} {Error}.";
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="entityName">Az entitás neve</param>
|
|
/// <param name="attributeName">Az attribútum neve</param>
|
|
public InvalidEntityAttributeException(string entityName, string attributeName)
|
|
: this(entityName, attributeName, EntityAttributeError.Unknown) { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="entityName">Az entitás neve</param>
|
|
/// <param name="attributeName">Az attribútum neve</param>
|
|
/// <param name="error">A hiba típusa</param>
|
|
public InvalidEntityAttributeException(string entityName, string attributeName, EntityAttributeError error)
|
|
: this(entityName, attributeName, error, null) { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="entityName">Az entitás neve</param>
|
|
/// <param name="attributeName">Az attribútum neve</param>
|
|
/// <param name="error">A hiba típusa</param>
|
|
/// <param name="innerException">Az előző kivétel</param>
|
|
public InvalidEntityAttributeException(string entityName, string attributeName, EntityAttributeError error, Exception innerException)
|
|
: base(_errorMessage, innerException)
|
|
{
|
|
SetValue("EntityName", entityName);
|
|
SetValue("AttributeName", attributeName);
|
|
SetValue("Error", error);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály alapértelmezett konstruktora.
|
|
/// </summary>
|
|
[Obsolete("Ezt a konstruktort ne használd!")]
|
|
public InvalidEntityAttributeException() { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
[Obsolete("Ezt a konstruktort ne használd!")]
|
|
public InvalidEntityAttributeException(string message)
|
|
: base(message) { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
/// <param name="innerException">A belső kivétel</param>
|
|
[Obsolete("Ezt a konstruktort ne használd!")]
|
|
public InvalidEntityAttributeException(string message, Exception innerException)
|
|
: base(message, innerException) { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="info">Sorosítási adatok</param>
|
|
/// <param name="context">Sorosítási adatfolyam</param>
|
|
InvalidEntityAttributeException(SerializationInfo info, StreamingContext context)
|
|
: base(info, context) { }
|
|
}
|
|
}
|