Code Duplication    Length = 17-17 lines in 2 locations

lib/private/Files/Storage/Local.php 2 locations

@@ 423-439 (lines=17) @@
420
	 * @param bool $preserveMtime
421
	 * @return bool
422
	 */
423
	public function copyFromStorage(IStorage $sourceStorage, $sourceInternalPath, $targetInternalPath, $preserveMtime = false) {
424
		if ($sourceStorage->instanceOfStorage(Local::class)) {
425
			if ($sourceStorage->instanceOfStorage(Jail::class)) {
426
				/**
427
				 * @var \OC\Files\Storage\Wrapper\Jail $sourceStorage
428
				 */
429
				$sourceInternalPath = $sourceStorage->getUnjailedPath($sourceInternalPath);
430
			}
431
			/**
432
			 * @var \OC\Files\Storage\Local $sourceStorage
433
			 */
434
			$rootStorage = new Local(['datadir' => '/']);
435
			return $rootStorage->copy($sourceStorage->getSourcePath($sourceInternalPath), $this->getSourcePath($targetInternalPath));
436
		} else {
437
			return parent::copyFromStorage($sourceStorage, $sourceInternalPath, $targetInternalPath);
438
		}
439
	}
440
441
	/**
442
	 * @param IStorage $sourceStorage
@@ 447-463 (lines=17) @@
444
	 * @param string $targetInternalPath
445
	 * @return bool
446
	 */
447
	public function moveFromStorage(IStorage $sourceStorage, $sourceInternalPath, $targetInternalPath) {
448
		if ($sourceStorage->instanceOfStorage(Local::class)) {
449
			if ($sourceStorage->instanceOfStorage(Jail::class)) {
450
				/**
451
				 * @var \OC\Files\Storage\Wrapper\Jail $sourceStorage
452
				 */
453
				$sourceInternalPath = $sourceStorage->getUnjailedPath($sourceInternalPath);
454
			}
455
			/**
456
			 * @var \OC\Files\Storage\Local $sourceStorage
457
			 */
458
			$rootStorage = new Local(['datadir' => '/']);
459
			return $rootStorage->rename($sourceStorage->getSourcePath($sourceInternalPath), $this->getSourcePath($targetInternalPath));
460
		} else {
461
			return parent::moveFromStorage($sourceStorage, $sourceInternalPath, $targetInternalPath);
462
		}
463
	}
464
}
465