79 lines
3.2 KiB
C#
79 lines
3.2 KiB
C#
using System;
|
|
using System.Runtime.Serialization;
|
|
using Kreta.Framework.Localization;
|
|
using Kreta.Framework.Logging;
|
|
|
|
namespace Kreta.Framework.Entities
|
|
{
|
|
/// <summary>
|
|
/// Hivatkozás lejárt entitás verziója.
|
|
/// </summary>
|
|
[FriendlyName(1000029, "Az entitás verziója eltér a megadottól.")]
|
|
[ErrorCode(Events.ENTITY_EXPIREDVERSION)]
|
|
[Serializable]
|
|
public sealed class EntityExpiredException : EntityException
|
|
{
|
|
const string _errorMessage = "The referred entity version is not up-to date.";
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="entityName">Az entitás neve</param>
|
|
/// <param name="entityId">Az entitás adatbázisbeli azonosítója</param>
|
|
/// <param name="entitySerial">Az entitás verziószáma</param>
|
|
public EntityExpiredException(string entityName, int entityId, int entitySerial)
|
|
: base(_errorMessage + " [EntityName: {EntityName}, EntityId: {EntityId}, EntitySerial: {EntitySerial}]")
|
|
{
|
|
SetValue("EntityName", entityName);
|
|
SetValue("EntityId", entityId);
|
|
SetValue("EntitySerial", entitySerial);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="entityName">Az entitás neve</param>
|
|
/// <param name="entityId">Az entitás adatbázisbeli azonosítója</param>
|
|
/// <param name="entitySerial">Az entitás verziószáma</param>
|
|
/// <param name="requestedSerial">Az entitás hivatkozott verziószáma</param>
|
|
public EntityExpiredException(string entityName, int entityId, int entitySerial, int requestedSerial)
|
|
: base(_errorMessage + " [EntityName: {EntityName}, EntityId: {EntityId}, EntitySerial: {EntitySerial}, RequestedSerial: {RequestedSerial}]")
|
|
{
|
|
SetValue("EntityName", entityName);
|
|
SetValue("EntityId", entityId);
|
|
SetValue("EntitySerial", entitySerial);
|
|
SetValue("RequestedSerial", requestedSerial);
|
|
}
|
|
|
|
/// <summary>
|
|
/// Az osztály alapértelmezett konstruktora.
|
|
/// </summary>
|
|
[Obsolete("Ezt a konstruktort ne használd!")]
|
|
public EntityExpiredException() { }
|
|
|
|
/// <summary>
|
|
/// Az osztály konstruktora.
|
|
/// </summary>
|
|
/// <param name="message">A kivétel üzenete</param>
|
|
[Obsolete("Ezt a konstruktort ne használd!")]
|
|
public EntityExpiredException(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 EntityExpiredException(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>
|
|
EntityExpiredException(SerializationInfo info, StreamingContext context)
|
|
: base(info, context) { }
|
|
}
|
|
}
|