Files
abysmal-isle/Scripts/Services/Reports/Persistence/PersistableObject.cs
Unstable Kitsune b918192e4e Overwrite
Complete Overwrite of the Folder with the free shard. ServUO 57.3 has been added.
2023-11-28 23:20:26 -05:00

49 lines
1.1 KiB
C#

using System;
namespace Server.Engines.Reports
{
public abstract class PersistableObject
{
public PersistableObject()
{
}
public abstract PersistableType TypeID { get; }
public virtual void SerializeAttributes(PersistenceWriter op)
{
}
public virtual void SerializeChildren(PersistenceWriter op)
{
}
public void Serialize(PersistenceWriter op)
{
op.BeginObject(this.TypeID);
this.SerializeAttributes(op);
op.BeginChildren();
this.SerializeChildren(op);
op.FinishChildren();
op.FinishObject();
}
public virtual void DeserializeAttributes(PersistenceReader ip)
{
}
public virtual void DeserializeChildren(PersistenceReader ip)
{
}
public void Deserialize(PersistenceReader ip)
{
this.DeserializeAttributes(ip);
if (ip.BeginChildren())
{
this.DeserializeChildren(ip);
ip.FinishChildren();
}
}
}
}