using System; using System.Runtime.Serialization; using Kreta.Framework.Localization; using Kreta.Framework.Logging; namespace Kreta.Framework.Entities { /// /// Érvénytelen entitás attribútumot jelző kivétel. /// [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}."; /// /// Az osztály konstruktora. /// /// Az entitás neve /// Az attribútum neve public InvalidEntityAttributeException(string entityName, string attributeName) : this(entityName, attributeName, EntityAttributeError.Unknown) { } /// /// Az osztály konstruktora. /// /// Az entitás neve /// Az attribútum neve /// A hiba típusa public InvalidEntityAttributeException(string entityName, string attributeName, EntityAttributeError error) : this(entityName, attributeName, error, null) { } /// /// Az osztály konstruktora. /// /// Az entitás neve /// Az attribútum neve /// A hiba típusa /// Az előző kivétel public InvalidEntityAttributeException(string entityName, string attributeName, EntityAttributeError error, Exception innerException) : base(_errorMessage, innerException) { SetValue("EntityName", entityName); SetValue("AttributeName", attributeName); SetValue("Error", error); } /// /// Az osztály alapértelmezett konstruktora. /// [Obsolete("Ezt a konstruktort ne használd!")] public InvalidEntityAttributeException() { } /// /// Az osztály konstruktora. /// /// A kivétel üzenete [Obsolete("Ezt a konstruktort ne használd!")] public InvalidEntityAttributeException(string message) : base(message) { } /// /// Az osztály konstruktora. /// /// A kivétel üzenete /// A belső kivétel [Obsolete("Ezt a konstruktort ne használd!")] public InvalidEntityAttributeException(string message, Exception innerException) : base(message, innerException) { } /// /// Az osztály konstruktora. /// /// Sorosítási adatok /// Sorosítási adatfolyam InvalidEntityAttributeException(SerializationInfo info, StreamingContext context) : base(info, context) { } } }