mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-11-06 17:00:13 +00:00
Merge branch 'master' of gitlab.com:peter-iakovlev/telegram-ios
This commit is contained in:
commit
089d953bb5
@ -280,50 +280,50 @@ public extension TelegramEngine {
|
||||
}
|
||||
|
||||
public func fetchAlbumCover(file: FileMediaReference?, title: String, performer: String) -> Signal<EngineMediaResource.Fetch.Result, EngineMediaResource.Fetch.Error> {
|
||||
let datacenterId: Int
|
||||
if let resource = file?.media.resource as? CloudDocumentMediaResource {
|
||||
datacenterId = resource.datacenterId
|
||||
} else {
|
||||
datacenterId = self.account.network.datacenterId
|
||||
}
|
||||
let signal = currentWebDocumentsHostDatacenterId(postbox: self.account.postbox, isTestingEnvironment: self.account.testingEnvironment)
|
||||
|> castError(EngineMediaResource.Fetch.Error.self)
|
||||
|> take(1)
|
||||
|> mapToSignal { datacenterId -> Signal<EngineMediaResource.Fetch.Result, EngineMediaResource.Fetch.Error> in
|
||||
let resource = AlbumCoverResource(datacenterId: Int(datacenterId), file: file, title: title, performer: performer)
|
||||
|
||||
let resource = AlbumCoverResource(datacenterId: datacenterId, file: file, title: title, performer: performer)
|
||||
|
||||
return bufferedFetch(multipartFetch(postbox: self.account.postbox, network: self.account.network, mediaReferenceRevalidationContext: self.account.mediaReferenceRevalidationContext, resource: resource, datacenterId: datacenterId, size: nil, intervals: .single([(0 ..< Int64.max, .default)]), parameters: MediaResourceFetchParameters(
|
||||
tag: nil,
|
||||
info: TelegramCloudMediaResourceFetchInfo(
|
||||
reference: MediaResourceReference.standalone(resource: resource),
|
||||
preferBackgroundReferenceRevalidation: false,
|
||||
continueInBackground: false
|
||||
),
|
||||
isRandomAccessAllowed: true
|
||||
))
|
||||
|> map { result -> EngineMediaResource.Fetch.Result in
|
||||
switch result {
|
||||
case let .dataPart(resourceOffset, data, range, complete):
|
||||
return .dataPart(resourceOffset: resourceOffset, data: data, range: range, complete: complete)
|
||||
case let .resourceSizeUpdated(size):
|
||||
return .resourceSizeUpdated(size)
|
||||
case let .progressUpdated(value):
|
||||
return .progressUpdated(value)
|
||||
case let .replaceHeader(data, range):
|
||||
return .replaceHeader(data: data, range: range)
|
||||
case let .moveLocalFile(path):
|
||||
return .moveLocalFile(path: path)
|
||||
case let .moveTempFile(file):
|
||||
return .moveTempFile(file: file)
|
||||
case let .copyLocalItem(item):
|
||||
return .copyLocalItem(item)
|
||||
case .reset:
|
||||
return .reset
|
||||
return multipartFetch(postbox: self.account.postbox, network: self.account.network, mediaReferenceRevalidationContext: self.account.mediaReferenceRevalidationContext, resource: resource, datacenterId: Int(datacenterId), size: nil, intervals: .single([(0 ..< Int64.max, .default)]), parameters: MediaResourceFetchParameters(
|
||||
tag: nil,
|
||||
info: TelegramCloudMediaResourceFetchInfo(
|
||||
reference: MediaResourceReference.standalone(resource: resource),
|
||||
preferBackgroundReferenceRevalidation: false,
|
||||
continueInBackground: false
|
||||
),
|
||||
isRandomAccessAllowed: true
|
||||
))
|
||||
|> map { result -> EngineMediaResource.Fetch.Result in
|
||||
switch result {
|
||||
case let .dataPart(resourceOffset, data, range, complete):
|
||||
return .dataPart(resourceOffset: resourceOffset, data: data, range: range, complete: complete)
|
||||
case let .resourceSizeUpdated(size):
|
||||
return .resourceSizeUpdated(size)
|
||||
case let .progressUpdated(value):
|
||||
return .progressUpdated(value)
|
||||
case let .replaceHeader(data, range):
|
||||
return .replaceHeader(data: data, range: range)
|
||||
case let .moveLocalFile(path):
|
||||
return .moveLocalFile(path: path)
|
||||
case let .moveTempFile(file):
|
||||
return .moveTempFile(file: file)
|
||||
case let .copyLocalItem(item):
|
||||
return .copyLocalItem(item)
|
||||
case .reset:
|
||||
return .reset
|
||||
}
|
||||
}
|
||||
|> mapError { error -> EngineMediaResource.Fetch.Error in
|
||||
switch error {
|
||||
case .generic:
|
||||
return .generic
|
||||
}
|
||||
}
|
||||
}
|
||||
|> mapError { error -> EngineMediaResource.Fetch.Error in
|
||||
switch error {
|
||||
case .generic:
|
||||
return .generic
|
||||
}
|
||||
})
|
||||
|
||||
return bufferedFetch(signal)
|
||||
}
|
||||
|
||||
public func cancelAllFetches(id: String) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user