add previews in binary content
This commit is contained in:
@@ -115,4 +115,25 @@ class ServerContentStorageAggregator(
|
||||
|
||||
return currentResults.createPaginationResult(pagination, count())
|
||||
}
|
||||
|
||||
override suspend fun getContentPreview(id: ContentId): RegisteredContent? {
|
||||
val result = CompletableDeferred<RegisteredContent>()
|
||||
|
||||
storages.map {
|
||||
scope.launch {
|
||||
val content = it.getContentPreview(id)
|
||||
if (content != null) {
|
||||
result.complete(content)
|
||||
}
|
||||
}.also { job ->
|
||||
result.invokeOnCompletion { job.cancel() }
|
||||
}
|
||||
}.joinAll()
|
||||
|
||||
return if (result.isCompleted) {
|
||||
result.getCompleted()
|
||||
} else {
|
||||
return null
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user