propagator batching when removing thumbnails
This commit is contained in:
parent
1fddd62c1c
commit
dfcaeeabb3
|
@ -136,9 +136,9 @@ class Preview {
|
||||||
|
|
||||||
//check if there are preview backends
|
//check if there are preview backends
|
||||||
if (!\OC::$server->getPreviewManager()
|
if (!\OC::$server->getPreviewManager()
|
||||||
->hasProviders()
|
->hasProviders()
|
||||||
&& \OC::$server->getConfig()
|
&& \OC::$server->getConfig()
|
||||||
->getSystemValue('enable_previews', true)
|
->getSystemValue('enable_previews', true)
|
||||||
) {
|
) {
|
||||||
\OCP\Util::writeLog('core', 'No preview providers exist', \OCP\Util::ERROR);
|
\OCP\Util::writeLog('core', 'No preview providers exist', \OCP\Util::ERROR);
|
||||||
throw new \Exception('No preview providers');
|
throw new \Exception('No preview providers');
|
||||||
|
@ -410,6 +410,10 @@ class Preview {
|
||||||
* Deletes all previews of a file
|
* Deletes all previews of a file
|
||||||
*/
|
*/
|
||||||
public function deleteAllPreviews() {
|
public function deleteAllPreviews() {
|
||||||
|
$thumbnailMount = $this->userView->getMount($this->getThumbnailsFolder());
|
||||||
|
$propagator = $thumbnailMount->getStorage()->getPropagator();
|
||||||
|
$propagator->beginBatch();
|
||||||
|
|
||||||
$toDelete = $this->getChildren();
|
$toDelete = $this->getChildren();
|
||||||
$toDelete[] = $this->getFileInfo();
|
$toDelete[] = $this->getFileInfo();
|
||||||
|
|
||||||
|
@ -426,6 +430,8 @@ class Preview {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$propagator->commitBatch();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -572,8 +578,8 @@ class Preview {
|
||||||
* @return integer[]
|
* @return integer[]
|
||||||
*/
|
*/
|
||||||
private function applyAspectRatio($askedWidth, $askedHeight, $originalWidth = 0, $originalHeight = 0) {
|
private function applyAspectRatio($askedWidth, $askedHeight, $originalWidth = 0, $originalHeight = 0) {
|
||||||
if(!$originalWidth){
|
if (!$originalWidth) {
|
||||||
$originalWidth= $this->maxPreviewWidth;
|
$originalWidth = $this->maxPreviewWidth;
|
||||||
}
|
}
|
||||||
if (!$originalHeight) {
|
if (!$originalHeight) {
|
||||||
$originalHeight = $this->maxPreviewHeight;
|
$originalHeight = $this->maxPreviewHeight;
|
||||||
|
@ -1112,7 +1118,7 @@ class Preview {
|
||||||
$preview = null;
|
$preview = null;
|
||||||
|
|
||||||
$previewProviders = \OC::$server->getPreviewManager()
|
$previewProviders = \OC::$server->getPreviewManager()
|
||||||
->getProviders();
|
->getProviders();
|
||||||
foreach ($previewProviders as $supportedMimeType => $providers) {
|
foreach ($previewProviders as $supportedMimeType => $providers) {
|
||||||
if (!preg_match($supportedMimeType, $this->mimeType)) {
|
if (!preg_match($supportedMimeType, $this->mimeType)) {
|
||||||
continue;
|
continue;
|
||||||
|
@ -1126,7 +1132,7 @@ class Preview {
|
||||||
|
|
||||||
\OCP\Util::writeLog(
|
\OCP\Util::writeLog(
|
||||||
'core', 'Generating preview for "' . $file . '" with "' . get_class($provider)
|
'core', 'Generating preview for "' . $file . '" with "' . get_class($provider)
|
||||||
. '"', \OCP\Util::DEBUG
|
. '"', \OCP\Util::DEBUG
|
||||||
);
|
);
|
||||||
|
|
||||||
/** @var $provider Provider */
|
/** @var $provider Provider */
|
||||||
|
@ -1260,7 +1266,7 @@ class Preview {
|
||||||
|
|
||||||
$absPath = Files\Filesystem::normalizePath($view->getAbsolutePath($path));
|
$absPath = Files\Filesystem::normalizePath($view->getAbsolutePath($path));
|
||||||
$fileInfo = $view->getFileInfo($path);
|
$fileInfo = $view->getFileInfo($path);
|
||||||
if($fileInfo === false) {
|
if ($fileInfo === false) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
self::addPathToDeleteFileMapper($absPath, $fileInfo);
|
self::addPathToDeleteFileMapper($absPath, $fileInfo);
|
||||||
|
|
Loading…
Reference in New Issue