public void LoadState(ISerializerStorage storage, ISerializerStream stream) { // Enforce required settings for scene state loading stream.DeepSerialize = true; stream.TypeResolver = this; stream.DependencyContainer = Container; storage.Load(stream); // STEP 1: Load the viewmodels var viewModels = stream.DeserializeObjectArray <ViewModel>("ViewModels"); foreach (var viewModel in viewModels) { VoidMethod(viewModel); // Do something here maybe? } // STEP 2: LOAD THE VIEWS stream.TypeResolver = this; // Clear the reference objects because the view-models will share the same identifier with views. stream.ReferenceObjects.Clear(); var views = stream.DeserializeObjectArray <ViewBase>("Views").ToArray(); foreach (var view in views) { VoidMethod(view); // Do something here maybe? } }
public void SaveState(ISerializerStorage storage, ISerializerStream stream) { stream.DeepSerialize = true; stream.TypeResolver = this; // Serialize The View Models stream.SerializeArray("ViewModels", PersistantViewModels); // Clear the references so view-models and view of the same identifier don't match up stream.ReferenceObjects.Clear(); // Serialize the views stream.SerializeArray("Views", PersistantViews); // Serialize the stream storage.Save(stream); }
/// <summary> /// Load's a set of view-models from a storage medium based on a stream. /// </summary> /// <param name="storage">This is for loading the stream from a persistant medium. e.g. File, String..etc</param> /// <param name="stream">The type of stream to serialize as. eg. Json,Xml,Binary</param> public void Load(ISerializerStorage storage, ISerializerStream stream) { stream.DependencyContainer = Container; storage.Load(stream); //stream.TypeResolver = new ViewStateResolver(this); // ReSharper disable once UnusedVariable var vms = stream.DeserializeObjectArray <ViewModel>("ViewModels").ToArray(); foreach (var vm in vms) { this[vm.Identifier] = vm; } }
public WKTSerializers(ISerializerStorage serializerStorage, IValueTypeObjectsDictionary objectCache) { Boolean = new BooleanSerializer(serializerStorage); Byte = new ByteSerializer(serializerStorage); Char = new CharSerializer(serializerStorage); DateTime = new DateTimeSerializer(serializerStorage); DateTimeOffset = new DateTimeOffsetSerializer(serializerStorage); Decimal = new DecimalSerializer(serializerStorage); Double = new DoubleSerializer(serializerStorage); Guid = new GuidSerializer(serializerStorage); Int16 = new Int16Serializer(serializerStorage); Int32 = new Int32Serializer(serializerStorage); Int64 = new Int64Serializer(serializerStorage); Object = new ObjectSerializer(serializerStorage); SByte = new SByteSerializer(serializerStorage); Single = new SingleSerializer(serializerStorage); String = new StringSerializer(serializerStorage, objectCache); TimeSpan = new TimeSpanSerializer(serializerStorage); UInt16 = new UInt16Serializer(serializerStorage); UInt32 = new UInt32Serializer(serializerStorage); }
public ISerializerBuilder Register <T>(ISerializerStorage <T> storage) { SerializeMethodCache <T> .Serialize = storage.Serialize; return(this); }
// Constructor public SingleSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public TimeSpanSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public PerfTests_Classes_AzureEntityFramework_AddressSerializer(ISerializerStorage serializerStorage, IRefTypeObjectsDictionary refObjectsCache, IValueTypeObjectsDictionary valObjectsCache) : base(serializerStorage, refObjectsCache, valObjectsCache) { }
// Constructor public BooleanSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public SZRefArraySerializer(ISerializerStorage serializerStorage, Action <T> elemSerializationAction, Func <T> elemDeserializationFunc) : base(serializerStorage) { m_ElemSerializationAction = elemSerializationAction; m_ElemDeserializationFunc = elemDeserializationFunc; }
public ISerDesBuilder Register <T>(ISerializerStorage <T> serStorage) { _serBuilder.Register(serStorage); return(this); }
// Part of ICachedObjectSerializer // Constructor public CachedSerializedObject(ISerializerStorage serializerStorage, TDictType objectCache) : base(serializerStorage) { ObjectCache = objectCache; }
// Constructor public StringSerializer(ISerializerStorage serializerStorage, IValueTypeObjectsDictionary objectCache) : base(serializerStorage, objectCache) { }
// Constructor public GuidSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
/// <summary> /// Saves /// </summary> /// <param name="storage"></param> /// <param name="stream"></param> /// <param name="viewModels"></param> public void Save(ISerializerStorage storage, ISerializerStream stream, IEnumerable <ViewModel> viewModels = null) { stream.SerializeArray("ViewModels", viewModels ?? PersitantViewModels.Values); storage.Save(stream); }
// Constructor public DecimalSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public SZArraySerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Part of ISerializedObject // Constructor public SerializedObject(ISerializerStorage serializerStorage) { SerializerStorage = serializerStorage; }
// Constructor public UInt32Serializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public CharSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public SByteSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public DoubleSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public ComplexTypeSerializerBase(ISerializerStorage serializerStorage, IRefTypeObjectsDictionary refObjectCache, IValueTypeObjectsDictionary valObjectsCache) : base(serializerStorage, refObjectCache) { ValObjectsCache = valObjectsCache; WKTSerializers = serializerStorage.WKTSerializers; }
// Constructor public DateTimeSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public Int64Serializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }
// Constructor public ObjectSerializer(ISerializerStorage serializerStorage) : base(serializerStorage) { }