aboutsummaryrefslogtreecommitdiffstats
path: root/apps/files_external/lib/backend
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files_external/lib/backend')
-rw-r--r--apps/files_external/lib/backend/amazons3.php5
-rw-r--r--apps/files_external/lib/backend/dav.php4
-rw-r--r--apps/files_external/lib/backend/dropbox.php5
-rw-r--r--apps/files_external/lib/backend/ftp.php4
-rw-r--r--apps/files_external/lib/backend/google.php5
-rw-r--r--apps/files_external/lib/backend/legacybackend.php21
-rw-r--r--apps/files_external/lib/backend/smb.php4
7 files changed, 41 insertions, 7 deletions
diff --git a/apps/files_external/lib/backend/amazons3.php b/apps/files_external/lib/backend/amazons3.php
index 880d47621f3..1cf62d7cb09 100644
--- a/apps/files_external/lib/backend/amazons3.php
+++ b/apps/files_external/lib/backend/amazons3.php
@@ -26,10 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
+
use \OCA\Files_External\Lib\Auth\AmazonS3\AccessKey;
class AmazonS3 extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, AccessKey $legacyAuth) {
$this
->setIdentifier('amazons3')
@@ -49,7 +53,6 @@ class AmazonS3 extends Backend {
(new DefinitionParameter('use_path_style', $l->t('Enable Path Style')))
->setType(DefinitionParameter::VALUE_BOOLEAN),
])
- ->setDependencyCheck('\OC\Files\Storage\AmazonS3::checkDependencies')
->addAuthScheme(AccessKey::SCHEME_AMAZONS3_ACCESSKEY)
->setLegacyAuthMechanism($legacyAuth)
;
diff --git a/apps/files_external/lib/backend/dav.php b/apps/files_external/lib/backend/dav.php
index 5ae6d122588..c4f446548e1 100644
--- a/apps/files_external/lib/backend/dav.php
+++ b/apps/files_external/lib/backend/dav.php
@@ -26,11 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
use \OCA\Files_External\Lib\Auth\Password\Password;
class DAV extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, Password $legacyAuth) {
$this
->setIdentifier('dav')
@@ -44,7 +47,6 @@ class DAV extends Backend {
(new DefinitionParameter('secure', $l->t('Secure https://')))
->setType(DefinitionParameter::VALUE_BOOLEAN),
])
- ->setDependencyCheck('\OC\Files\Storage\DAV::checkDependencies')
->addAuthScheme(AuthMechanism::SCHEME_PASSWORD)
->setLegacyAuthMechanism($legacyAuth)
;
diff --git a/apps/files_external/lib/backend/dropbox.php b/apps/files_external/lib/backend/dropbox.php
index bfd2e4cddc4..3e595cb0a9c 100644
--- a/apps/files_external/lib/backend/dropbox.php
+++ b/apps/files_external/lib/backend/dropbox.php
@@ -26,10 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
+
use \OCA\Files_External\Lib\Auth\OAuth1\OAuth1;
class Dropbox extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, OAuth1 $legacyAuth) {
$this
->setIdentifier('dropbox')
@@ -39,7 +43,6 @@ class Dropbox extends Backend {
->addParameters([
// all parameters handled in OAuth1 mechanism
])
- ->setDependencyCheck('\OC\Files\Storage\Dropbox::checkDependencies')
->addAuthScheme(AuthMechanism::SCHEME_OAUTH1)
->setLegacyAuthMechanism($legacyAuth)
;
diff --git a/apps/files_external/lib/backend/ftp.php b/apps/files_external/lib/backend/ftp.php
index df6ca37679e..1caf3a8fcb8 100644
--- a/apps/files_external/lib/backend/ftp.php
+++ b/apps/files_external/lib/backend/ftp.php
@@ -26,11 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
use \OCA\Files_External\Lib\Auth\Password\Password;
class FTP extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, Password $legacyAuth) {
$this
->setIdentifier('ftp')
@@ -44,7 +47,6 @@ class FTP extends Backend {
(new DefinitionParameter('secure', $l->t('Secure ftps://')))
->setType(DefinitionParameter::VALUE_BOOLEAN),
])
- ->setDependencyCheck('\OC\Files\Storage\FTP::checkDependencies')
->addAuthScheme(AuthMechanism::SCHEME_PASSWORD)
->setLegacyAuthMechanism($legacyAuth)
;
diff --git a/apps/files_external/lib/backend/google.php b/apps/files_external/lib/backend/google.php
index b46b2f653a6..bc0b52c464b 100644
--- a/apps/files_external/lib/backend/google.php
+++ b/apps/files_external/lib/backend/google.php
@@ -26,10 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
+
use \OCA\Files_External\Lib\Auth\OAuth2\OAuth2;
class Google extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, OAuth2 $legacyAuth) {
$this
->setIdentifier('googledrive')
@@ -39,7 +43,6 @@ class Google extends Backend {
->addParameters([
// all parameters handled in OAuth2 mechanism
])
- ->setDependencyCheck('\OC\Files\Storage\Google::checkDependencies')
->addAuthScheme(AuthMechanism::SCHEME_OAUTH2)
->setLegacyAuthMechanism($legacyAuth)
;
diff --git a/apps/files_external/lib/backend/legacybackend.php b/apps/files_external/lib/backend/legacybackend.php
index 0f60c2caa47..83a5b45940d 100644
--- a/apps/files_external/lib/backend/legacybackend.php
+++ b/apps/files_external/lib/backend/legacybackend.php
@@ -24,12 +24,21 @@ namespace OCA\Files_External\Lib\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\Auth\Builtin;
+use \OCA\Files_External\Lib\MissingDependency;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
/**
* Legacy compatibility for OC_Mount_Config::registerBackend()
*/
class LegacyBackend extends Backend {
+ use LegacyDependencyCheckPolyfill {
+ LegacyDependencyCheckPolyfill::checkDependencies as doCheckDependencies;
+ }
+
+ /** @var bool */
+ protected $hasDependencies = false;
+
/**
* @param string $class
* @param array $definition
@@ -78,8 +87,18 @@ class LegacyBackend extends Backend {
$this->setCustomJs($definition['custom']);
}
if (isset($definition['has_dependencies']) && $definition['has_dependencies']) {
- $this->setDependencyCheck($class . '::checkDependencies');
+ $this->hasDependencies = true;
+ }
+ }
+
+ /**
+ * @return MissingDependency[]
+ */
+ public function checkDependencies() {
+ if ($this->hasDependencies) {
+ return $this->doCheckDependencies();
}
+ return [];
}
}
diff --git a/apps/files_external/lib/backend/smb.php b/apps/files_external/lib/backend/smb.php
index 3d950a80c31..350eca1de34 100644
--- a/apps/files_external/lib/backend/smb.php
+++ b/apps/files_external/lib/backend/smb.php
@@ -26,11 +26,14 @@ use \OCA\Files_External\Lib\Backend\Backend;
use \OCA\Files_External\Lib\DefinitionParameter;
use \OCA\Files_External\Lib\Auth\AuthMechanism;
use \OCA\Files_External\Service\BackendService;
+use \OCA\Files_External\Lib\LegacyDependencyCheckPolyfill;
use \OCA\Files_External\Lib\Auth\Password\Password;
class SMB extends Backend {
+ use LegacyDependencyCheckPolyfill;
+
public function __construct(IL10N $l, Password $legacyAuth) {
$this
->setIdentifier('smb')
@@ -43,7 +46,6 @@ class SMB extends Backend {
(new DefinitionParameter('root', $l->t('Remote subfolder')))
->setFlag(DefinitionParameter::FLAG_OPTIONAL),
])
- ->setDependencyCheck('\OC\Files\Storage\SMB::checkDependencies')
->addAuthScheme(AuthMechanism::SCHEME_PASSWORD)
->setLegacyAuthMechanism($legacyAuth)
;