public Task <object> LoadAsync(Type type, DataSetItem item) { var formatter = CreateFormatter(item); var content = ReadContent(item); return(Task.FromResult(CallGenericDeserialize(type, formatter, content))); }
private IStadFormatter CreateFormatter(DataSetItem item) { switch (item.EncodingType) { case EncodingType.MessagePack: break; case EncodingType.Json: return(new StadJsonFormatter()); break; } return(null); }
private ArraySegment <byte> ReadContent(DataSetItem item) { // TODO: stackalloc된 array에 copy 하도록 하여 return? return(File.ReadAllBytes($"{_rootPath + item.Name}.{item.EncodingType}")); }