public async Task <ResourceData> GetDataAsync(ResourceLanguage language) { if (!_languages.ContainsKey(language)) { return(null); } var languageEntry = _languages[language]; var entry = await languageEntry.GetDataEntryAsync().ConfigureAwait(false); var data = entry.GetData(); return(data); }
public async Task <byte[]> GetBytesAsync(ResourceLanguage language) { if (!_languages.ContainsKey(language)) { throw new PortableExecutableImageException(Image, $"Cannot find specified language: {language}"); } var data = await GetDataAsync(language).ConfigureAwait(false); if (data == null) { throw new PortableExecutableImageException(Image, $"Cannot find resource data for language: {language}"); } return(await data.GetBytesAsync().ConfigureAwait(false)); }
public ResourceData GetData(ResourceLanguage language) { return(GetDataAsync(language).GetAwaiter().GetResult()); }
public async Task CopyToAsync(Stream stream, ResourceLanguage language) { var data = await GetDataAsync(language).ConfigureAwait(false); await data.CopyToAsync(stream).ConfigureAwait(false); }
public void CopyTo(Stream stream, ResourceLanguage language) { CopyToAsync(stream, language).GetAwaiter().GetResult(); }
public byte[] GetBytes(ResourceLanguage language) { return(GetBytesAsync(language).GetAwaiter().GetResult()); }