158 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			158 lines
		
	
	
		
			3.7 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System.Collections.Generic; | |||
|  | using System.Collections; | |||
|  | using System.IO; | |||
|  | using System; | |||
|  | using UnityEngine; | |||
|  | using System.Text; | |||
|  | using System.Globalization; | |||
|  | 
 | |||
|  | namespace ES3Internal | |||
|  | { | |||
|  | 	internal class ES3CacheWriter : ES3Writer | |||
|  | 	{ | |||
|  |         ES3File es3File; | |||
|  | 
 | |||
|  | 		internal ES3CacheWriter(ES3Settings settings, bool writeHeaderAndFooter, bool mergeKeys) : base(settings, writeHeaderAndFooter, mergeKeys) | |||
|  | 		{ | |||
|  |             es3File = new ES3File(settings); | |||
|  | 		} | |||
|  | 
 | |||
|  |         /* User-facing methods used when writing randomly-accessible Key-Value pairs. */ | |||
|  |         #region Write(key, value) Methods | |||
|  | 
 | |||
|  |         /// <summary>Writes a value to the writer with the given key.</summary> | |||
|  |         /// <param name="key">The key which uniquely identifies this value.</param> | |||
|  |         /// <param name="value">The value we want to write.</param> | |||
|  |         public override void Write<T>(string key, object value) | |||
|  |         { | |||
|  |             es3File.Save<T>(key, (T)value); | |||
|  |         } | |||
|  | 
 | |||
|  |         internal override void Write(string key, Type type, byte[] value) | |||
|  |         { | |||
|  |             ES3Debug.LogError("Not implemented"); | |||
|  |         } | |||
|  | 
 | |||
|  |         [System.ComponentModel.EditorBrowsable(System.ComponentModel.EditorBrowsableState.Never)] | |||
|  |         public override void Write(Type type, string key, object value) | |||
|  |         { | |||
|  |             es3File.Save(key, value); | |||
|  |         } | |||
|  | 
 | |||
|  |         #endregion | |||
|  | 
 | |||
|  | 
 | |||
|  |         #region WritePrimitive(value) methods. | |||
|  | 
 | |||
|  |         internal override void WritePrimitive(int value)		{ } | |||
|  | 		internal override void WritePrimitive(float value)	{ } | |||
|  | 		internal override void WritePrimitive(bool value)		{ } | |||
|  | 		internal override void WritePrimitive(decimal value)	{ } | |||
|  | 		internal override void WritePrimitive(double value)	{ } | |||
|  | 		internal override void WritePrimitive(long value)		{ } | |||
|  | 		internal override void WritePrimitive(ulong value)	{ } | |||
|  | 		internal override void WritePrimitive(uint value)		{ } | |||
|  | 		internal override void WritePrimitive(byte value)		{ } | |||
|  | 		internal override void WritePrimitive(sbyte value)	{ } | |||
|  | 		internal override void WritePrimitive(short value)	{ } | |||
|  | 		internal override void WritePrimitive(ushort value)	{ } | |||
|  | 		internal override void WritePrimitive(char value)		{ } | |||
|  | 		internal override void WritePrimitive(byte[] value)		{ } | |||
|  | 
 | |||
|  | 
 | |||
|  | 		internal override void WritePrimitive(string value) | |||
|  | 		{  | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void WriteNull() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		#endregion | |||
|  | 
 | |||
|  | 		#region Format-specific methods | |||
|  | 
 | |||
|  | 		private static bool CharacterRequiresEscaping(char c) | |||
|  | 		{ | |||
|  |             return false; | |||
|  | 		} | |||
|  | 
 | |||
|  | 		private void WriteCommaIfRequired() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void WriteRawProperty(string name, byte[] value) | |||
|  | 		{  | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteFile() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteFile() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteProperty(string name) | |||
|  | 		{ | |||
|  |             base.StartWriteProperty(name); | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteProperty(string name) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteObject(string name) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteObject(string name) | |||
|  | 		{ | |||
|  |         } | |||
|  | 
 | |||
|  | 		internal override void StartWriteCollection() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteCollection() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteCollectionItem(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteCollectionItem(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteDictionary() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteDictionary() | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteDictionaryKey(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteDictionaryKey(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void StartWriteDictionaryValue(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		internal override void EndWriteDictionaryValue(int index) | |||
|  | 		{ | |||
|  | 		} | |||
|  | 
 | |||
|  | 		#endregion | |||
|  | 
 | |||
|  | 		public override void Dispose(){} | |||
|  | 	} | |||
|  | } |