Updates Serialization (#292)
- [X] Removes all save strategies
- [X] Removes duplicate file writer that won't be used
- [X] Removes persistence (it will become a duplicate system)
- [X] Add a save position variable to skip serializing a clean item/mobile
- [X] Update Guilds/Accounts to be IEntity types
- Because guilds are abstract, this may make serialization tricky.
- [X] Update the generalized IEntity writing
- [X] Update the load/save to write to buffers then to files in background
Bumps release version
This commit is contained in:
parent
a8d486a969
commit
1ca8655fc1
43 changed files with 1148 additions and 4351 deletions
|
|
@ -15,6 +15,7 @@
|
|||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Net;
|
||||
using Server.Guilds;
|
||||
|
||||
|
|
@ -23,9 +24,7 @@ namespace Server
|
|||
public interface IGenericWriter
|
||||
{
|
||||
long Position { get; }
|
||||
|
||||
void Close();
|
||||
|
||||
void Write(string value);
|
||||
void Write(DateTime value);
|
||||
void Write(DateTimeOffset value);
|
||||
|
|
@ -41,66 +40,50 @@ namespace Server
|
|||
void Write(float value);
|
||||
void Write(char value);
|
||||
void Write(byte value);
|
||||
void Write(byte[] value);
|
||||
void Write(byte[] value, int length);
|
||||
void Write(sbyte value);
|
||||
void Write(bool value);
|
||||
void WriteEncodedInt(int value);
|
||||
void Write(IPAddress value);
|
||||
|
||||
void WriteDeltaTime(DateTime value);
|
||||
|
||||
void Write(Point3D value);
|
||||
void Write(Point2D value);
|
||||
void Write(Rectangle2D value);
|
||||
void Write(Rectangle3D value);
|
||||
void Write(Map value);
|
||||
|
||||
void WriteEntity(IEntity value);
|
||||
void Write(Item value);
|
||||
void Write(Mobile value);
|
||||
void Write(BaseGuild value);
|
||||
|
||||
void WriteItem<T>(T value) where T : Item;
|
||||
void WriteMobile<T>(T value) where T : Mobile;
|
||||
void WriteGuild<T>(T value) where T : BaseGuild;
|
||||
|
||||
void Write(Race value);
|
||||
|
||||
void Write(List<Item> list);
|
||||
void Write(List<Item> list, bool tidy);
|
||||
|
||||
void WriteItemList<T>(List<T> list) where T : Item;
|
||||
void WriteItemList<T>(List<T> list, bool tidy) where T : Item;
|
||||
|
||||
void Write(HashSet<Item> list);
|
||||
void Write(HashSet<Item> list, bool tidy);
|
||||
|
||||
void WriteItemSet<T>(HashSet<T> set) where T : Item;
|
||||
void WriteItemSet<T>(HashSet<T> set, bool tidy) where T : Item;
|
||||
|
||||
void Write(List<Mobile> list);
|
||||
void Write(List<Mobile> list, bool tidy);
|
||||
|
||||
void WriteMobileList<T>(List<T> list) where T : Mobile;
|
||||
void WriteMobileList<T>(List<T> list, bool tidy) where T : Mobile;
|
||||
|
||||
void Write(HashSet<Mobile> list);
|
||||
void Write(HashSet<Mobile> list, bool tidy);
|
||||
|
||||
void WriteMobileSet<T>(HashSet<T> set) where T : Mobile;
|
||||
void WriteMobileSet<T>(HashSet<T> set, bool tidy) where T : Mobile;
|
||||
|
||||
void Write(List<BaseGuild> list);
|
||||
void Write(List<BaseGuild> list, bool tidy);
|
||||
|
||||
void WriteGuildList<T>(List<T> list) where T : BaseGuild;
|
||||
void WriteGuildList<T>(List<T> list, bool tidy) where T : BaseGuild;
|
||||
|
||||
void Write(HashSet<BaseGuild> list);
|
||||
void Write(HashSet<BaseGuild> list, bool tidy);
|
||||
|
||||
void WriteGuildSet<T>(HashSet<T> set) where T : BaseGuild;
|
||||
void WriteGuildSet<T>(HashSet<T> set, bool tidy) where T : BaseGuild;
|
||||
|
||||
long Seek(long offset, SeekOrigin origin);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue