]> source.dussan.org Git - nextcloud-server.git/commitdiff
pass KeyStorage via ctor
authorThomas Müller <thomas.mueller@tmit.eu>
Wed, 22 Apr 2015 11:09:42 +0000 (13:09 +0200)
committerThomas Müller <thomas.mueller@tmit.eu>
Wed, 22 Apr 2015 11:09:42 +0000 (13:09 +0200)
lib/private/encryption/manager.php
lib/private/files/storage/wrapper/encryption.php
tests/lib/files/storage/wrapper/encryption.php

index 7a3f17519fce8271dadc70b88d1cccf808d1b187..97203b7756dce6924965466ee130cf65185c355b 100644 (file)
@@ -221,7 +221,8 @@ class Manager implements IManager {
                                $logger = \OC::$server->getLogger();
                                $uid = $user ? $user->getUID() : null;
                                $fileHelper = \OC::$server->getEncryptionFilesHelper();
-                               return new Encryption($parameters, $manager, $util, $logger, $fileHelper, $uid);
+                               $keyStorage = \OC::$server->getEncryptionKeyStorage();
+                               return new Encryption($parameters, $manager, $util, $logger, $fileHelper, $uid, $keyStorage);
                        } else {
                                return $storage;
                        }
index 04eb5fceedd1e9dfcf99043e75d8487508eed803..0a9e6d61d2ee6584a9664c9ec2bd4aa6461fb59a 100644 (file)
@@ -56,6 +56,9 @@ class Encryption extends Wrapper {
        /** @var IMountPoint */
        private $mount;
 
+       /** @var \OCP\Encryption\Keys\IStorage */
+       private $keyStorage;
+
        /**
         * @param array $parameters
         * @param \OC\Encryption\Manager $encryptionManager
@@ -70,7 +73,8 @@ class Encryption extends Wrapper {
                        \OC\Encryption\Util $util = null,
                        \OC\Log $logger = null,
                        File $fileHelper = null,
-                       $uid = null
+                       $uid = null,
+                       $keyStorage = null
                ) {
 
                $this->mountPoint = $parameters['mountPoint'];
@@ -80,6 +84,7 @@ class Encryption extends Wrapper {
                $this->logger = $logger;
                $this->uid = $uid;
                $this->fileHelper = $fileHelper;
+               $this->keyStorage = $keyStorage;
                $this->unencryptedSize = array();
                parent::__construct($parameters);
        }
@@ -187,8 +192,7 @@ class Encryption extends Wrapper {
 
                $encryptionModule = $this->getEncryptionModule($path);
                if ($encryptionModule) {
-                       $keyStorage = $this->getKeyStorage();
-                       $keyStorage->deleteAllFileKeys($this->getFullPath($path),
+                       $this->keyStorage->deleteAllFileKeys($this->getFullPath($path),
                                $encryptionModule->getId());
                }
 
@@ -215,8 +219,7 @@ class Encryption extends Wrapper {
                        if (isset($this->unencryptedSize[$source])) {
                                $this->unencryptedSize[$target] = $this->unencryptedSize[$source];
                        }
-                       $keyStorage = $this->getKeyStorage();
-                       $keyStorage->renameKeys($source, $target);
+                       $this->keyStorage->renameKeys($source, $target);
                }
 
                return $result;
@@ -241,8 +244,7 @@ class Encryption extends Wrapper {
                        $target = $this->getFullPath($path2);
                        $encryptionModule = $this->getEncryptionModule($path2);
                        if ($encryptionModule) {
-                               $keyStorage = $this->getKeyStorage($encryptionModule->getId());
-                               $keyStorage->copyKeys($source, $target);
+                               $this->keyStorage->copyKeys($source, $target);
                        }
                }
 
@@ -429,13 +431,4 @@ class Encryption extends Wrapper {
        public function updateUnencryptedSize($path, $unencryptedSize) {
                $this->unencryptedSize[$path] = $unencryptedSize;
        }
-
-       /**
-        * @param string $encryptionModuleId
-        * @return \OCP\Encryption\Keys\IStorage
-        */
-       protected function getKeyStorage() {
-               return \OC::$server->getEncryptionKeyStorage();
-       }
-
 }
index 228c7b08d61fd9c7dc51c2978343f7a494e508b8..1d7765555039bd90e21793319f47715eeafe4562 100644 (file)
@@ -66,7 +66,7 @@ class Encryption extends \Test\Files\Storage\Storage {
                        ->setMethods(['getOption'])
                        ->getMock();
                $mount->expects($this->any())->method('getOption')->willReturn(true);
-               $this->instance = new EncryptionWrapper([
+               $this->instance = new \OC\Files\Storage\Wrapper\Encryption([
                        'storage' => $this->sourceStorage,
                        'root' => 'foo',
                        'mountPoint' => '/',
@@ -105,28 +105,3 @@ class Encryption extends \Test\Files\Storage\Storage {
                $this->instance->rename('folder', 'flodder');
        }
 }
-
-//
-// FIXME: this is too bad and needs adjustment
-//
-class EncryptionWrapper extends \OC\Files\Storage\Wrapper\Encryption {
-       private $keyStore;
-
-       public function __construct(
-               $parameters,
-               \OC\Encryption\Manager $encryptionManager = null,
-               \OC\Encryption\Util $util = null,
-               \OC\Log $logger = null,
-               \OC\Encryption\File $fileHelper = null,
-               $uid = null,
-               $keyStore = null
-       ) {
-               $this->keyStore = $keyStore;
-               parent::__construct($parameters, $encryptionManager, $util, $logger, $fileHelper, $uid);
-       }
-
-       protected function getKeyStorage() {
-               return $this->keyStore;
-       }
-
-}