Files: added GetThumbnailAsync
This commit is contained in:
parent
8ddf907338
commit
75828a376d
@ -313,7 +313,9 @@ namespace ASC.Files.Core
|
||||
|
||||
void SaveThumbnail(File<T> file, Stream thumbnail);
|
||||
|
||||
Stream GetThumbnail(File<T> file);
|
||||
Stream GetThumbnail(File<T> file);
|
||||
|
||||
Task<Stream> GetThumbnailAsync(File<T> file);
|
||||
|
||||
IEnumerable<(File<int>, SmallShareRecord)> GetFeeds(int tenant, DateTime from, DateTime to);
|
||||
|
||||
|
@ -1304,6 +1304,16 @@ namespace ASC.Files.Core.Data
|
||||
return storage.GetReadStream(string.Empty, path);
|
||||
}
|
||||
|
||||
public async Task<Stream> GetThumbnailAsync(File<int> file)
|
||||
{
|
||||
var thumnailName = ThumbnailTitle + "." + Global.ThumbnailExtension;
|
||||
var path = GetUniqFilePath(file, thumnailName);
|
||||
var storage = GlobalStore.GetStore();
|
||||
var isExist = await storage.IsFileAsync(string.Empty, path);
|
||||
if (!isExist) throw new FileNotFoundException();
|
||||
return await storage.GetReadStreamAsync(string.Empty, path, 0);
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
private Func<Selector<DbFile>, Selector<DbFile>> GetFuncForSearch(object parentId, OrderBy orderBy, FilterType filterType, bool subjectGroup, Guid subjectID, string searchText, bool searchInContent, bool withSubfolders = false)
|
||||
|
@ -80,6 +80,11 @@ namespace ASC.Files.Thirdparty
|
||||
return null;
|
||||
}
|
||||
|
||||
public Task<Stream> GetThumbnailAsync(File<string> file)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public virtual Stream GetFileStream(File<string> file)
|
||||
{
|
||||
return null;
|
||||
|
@ -1004,7 +1004,7 @@ namespace ASC.Web.Files
|
||||
context.Response.Headers.Add("Content-Disposition", ContentDispositionUtil.GetHeaderValue("." + Global.ThumbnailExtension));
|
||||
context.Response.ContentType = MimeMapping.GetMimeMapping("." + Global.ThumbnailExtension);
|
||||
|
||||
using (var stream = fileDao.GetThumbnail(file))
|
||||
using (var stream = await fileDao.GetThumbnailAsync(file))
|
||||
{
|
||||
context.Response.Headers.Add("Content-Length", stream.Length.ToString(CultureInfo.InvariantCulture));
|
||||
await stream.CopyToAsync(context.Response.Body);
|
||||
|
Loading…
Reference in New Issue
Block a user