diff options
Diffstat (limited to 'apps/files_external/lib/backend')
-rw-r--r-- | apps/files_external/lib/backend/amazons3.php | 5 | ||||
-rw-r--r-- | apps/files_external/lib/backend/dav.php | 4 | ||||
-rw-r--r-- | apps/files_external/lib/backend/dropbox.php | 5 | ||||
-rw-r--r-- | apps/files_external/lib/backend/ftp.php | 4 | ||||
-rw-r--r-- | apps/files_external/lib/backend/google.php | 5 | ||||
-rw-r--r-- | apps/files_external/lib/backend/legacybackend.php | 21 | ||||
-rw-r--r-- | apps/files_external/lib/backend/smb.php | 4 |
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) ; |