async UniTask Test <T>(T data, ISerializationProvider serializationProvider) { var serialized = await serializationProvider.SerializeAsync(data); var deserialized = await serializationProvider.DeserializeAsync <T>(serialized); Assert.AreEqual(data, deserialized); }
/// <summary> /// Transforms data back to the original object. /// <para>Data was serialized, compressed, then encrypted. So here it is decrypted, decompressed, and deserialized.</para> /// </summary> /// <typeparam name="TOut"></typeparam> /// <param name="data"></param> /// <returns></returns> public Task <TOut> DeserializeAsync <TOut>(ReadOnlyMemory <byte> data) { if (_encryptionProvider != null && _compressionProvider != null) { return(DecryptDecompressDeserializeAsync <TOut>(data)); } else if (_encryptionProvider != null) { return(DecryptDeserializeAsync <TOut>(data)); } else if (_compressionProvider != null) { return(DecompressDeserializeAsync <TOut>(data)); } return(_serializationProvider.DeserializeAsync <TOut>(data.AsStream())); }
public UniTask <TData> LoadAsync <TData>(string fileName) { return(_fileProvider.ReadAsync(GetFilePath(fileName)) .ContinueWith(bytes => _serializationProvider.DeserializeAsync <TData>(bytes))); }
public UniTask <T> DeserializeAsync <T>(byte[] data) => _dataTransform.ReverseAsync(data) .ContinueWith(bytes => _baseProvider.DeserializeAsync <T>(bytes));
public UniTask <T> GetDataAsync <T>(string key) => _serializationProvider.DeserializeAsync <T>(GetBytes(key));