using System;
using System.Runtime.Serialization;
using Kreta.Framework.Localization;
using Kreta.Framework.Logging;
namespace Kreta.Framework.Entities
{
///
/// Érvénytelen entitás művelet.
///
[FriendlyName(1000011, "Súlyos üzleti logikai hiba, kérjük értesítse az üzemeltetőt.\r\nHivatkozási hiba azonosító: {Id}")]
[ErrorCode(Events.ENTITY_INVALIDSTATE)]
[Serializable]
public sealed class EntityStateException : EntityException
{
const string _errorMessage = "The operation cannot be completed according to state of the entity.";
///
/// Az osztály konstruktora.
///
/// Az entitás jelenlegi állapota.
public EntityStateException(EntityState currentState)
: base(_errorMessage)
{
this.SetValue("CurrentState", currentState);
}
///
/// Az osztály alapértelmezett konstruktora.
///
[Obsolete("Ezt a konstruktort ne használd!")]
public EntityStateException() { }
///
/// Az osztály konstruktora.
///
/// A kivétel üzenete
[Obsolete("Ezt a konstruktort ne használd!")]
public EntityStateException(string message)
: base(message) { }
///
/// Az osztály konstruktora.
///
/// A kivétel üzenete
/// A belső kivétel
[Obsolete("Ezt a konstruktort ne használd!")]
public EntityStateException(string message, Exception innerException)
: base(message, innerException) { }
///
/// Az osztály konstruktora.
///
/// Sorosítási adatok
/// Sorosítási adatfolyam
EntityStateException(SerializationInfo info, StreamingContext context)
: base(info, context) { }
}
}