diff options
author | John Molakvoæ <skjnldsv@users.noreply.github.com> | 2024-06-04 15:47:48 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-06-04 15:47:48 +0200 |
commit | 9197676b8210708e7cf0782d42156b47ccae186e (patch) | |
tree | 0c034529aa903d116261f909e5b26bf19db0d50e /lib | |
parent | 16e331ffb94b016895b0de21159b78061b3899e2 (diff) | |
parent | 57cd95f804cd2e8fe6e955dc032b1fbc73024a19 (diff) | |
download | nextcloud-server-9197676b8210708e7cf0782d42156b47ccae186e.tar.gz nextcloud-server-9197676b8210708e7cf0782d42156b47ccae186e.zip |
Merge branch 'master' into refactor/OC-Server-getEncryptionFilesHelper
Signed-off-by: John Molakvoæ <skjnldsv@users.noreply.github.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/private/Cache/File.php | 2 | ||||
-rw-r--r-- | lib/private/DB/AdapterPgSql.php | 18 | ||||
-rw-r--r-- | lib/private/DB/Connection.php | 3 | ||||
-rw-r--r-- | lib/private/Encryption/EncryptionWrapper.php | 3 | ||||
-rw-r--r-- | lib/private/Files/Node/Folder.php | 2 | ||||
-rw-r--r-- | lib/private/Files/Storage/DAV.php | 2 | ||||
-rw-r--r-- | lib/private/Mail/Mailer.php | 7 | ||||
-rw-r--r-- | lib/private/NavigationManager.php | 2 | ||||
-rw-r--r-- | lib/private/Repair.php | 5 | ||||
-rw-r--r-- | lib/private/Security/SecureRandom.php | 2 | ||||
-rw-r--r-- | lib/private/Setup/PostgreSQL.php | 2 | ||||
-rw-r--r-- | lib/private/Share20/ProviderFactory.php | 18 | ||||
-rw-r--r-- | lib/private/TemplateLayout.php | 7 | ||||
-rw-r--r-- | lib/private/User/Session.php | 3 | ||||
-rw-r--r-- | lib/private/User/User.php | 5 | ||||
-rw-r--r-- | lib/private/legacy/OC_Util.php | 13 | ||||
-rw-r--r-- | lib/public/Contacts/IManager.php | 2 | ||||
-rw-r--r-- | lib/public/INavigationManager.php | 6 | ||||
-rw-r--r-- | lib/public/Mail/IMailer.php | 2 | ||||
-rw-r--r-- | lib/public/Security/ISecureRandom.php | 2 | ||||
-rw-r--r-- | lib/public/Util.php | 9 |
21 files changed, 58 insertions, 57 deletions
diff --git a/lib/private/Cache/File.php b/lib/private/Cache/File.php index 33fa1c00e98..10152d0966b 100644 --- a/lib/private/Cache/File.php +++ b/lib/private/Cache/File.php @@ -83,7 +83,7 @@ class File implements ICache { $storage = $this->getStorage(); $result = false; // unique id to avoid chunk collision, just in case - $uniqueId = \OC::$server->getSecureRandom()->generate( + $uniqueId = \OC::$server->get(ISecureRandom::class)->generate( 16, ISecureRandom::CHAR_ALPHANUMERIC ); diff --git a/lib/private/DB/AdapterPgSql.php b/lib/private/DB/AdapterPgSql.php index 847ea3052b7..db48c81c2c5 100644 --- a/lib/private/DB/AdapterPgSql.php +++ b/lib/private/DB/AdapterPgSql.php @@ -8,7 +8,6 @@ namespace OC\DB; class AdapterPgSql extends Adapter { - protected $compatModePre9_5 = null; public function lastInsertId($table) { $result = $this->conn->executeQuery('SELECT lastval()'); @@ -25,10 +24,6 @@ class AdapterPgSql extends Adapter { } public function insertIgnoreConflict(string $table, array $values) : int { - if ($this->isPre9_5CompatMode() === true) { - return parent::insertIgnoreConflict($table, $values); - } - // "upsert" is only available since PgSQL 9.5, but the generic way // would leave error logs in the DB. $builder = $this->conn->getQueryBuilder(); @@ -39,17 +34,4 @@ class AdapterPgSql extends Adapter { $queryString = $builder->getSQL() . ' ON CONFLICT DO NOTHING'; return $this->conn->executeUpdate($queryString, $builder->getParameters(), $builder->getParameterTypes()); } - - protected function isPre9_5CompatMode(): bool { - if ($this->compatModePre9_5 !== null) { - return $this->compatModePre9_5; - } - - $result = $this->conn->executeQuery('SHOW SERVER_VERSION'); - $version = $result->fetchOne(); - $result->free(); - $this->compatModePre9_5 = version_compare($version, '9.5', '<'); - - return $this->compatModePre9_5; - } } diff --git a/lib/private/DB/Connection.php b/lib/private/DB/Connection.php index 8d300123a40..c886cb20235 100644 --- a/lib/private/DB/Connection.php +++ b/lib/private/DB/Connection.php @@ -28,6 +28,7 @@ use OCP\Diagnostics\IEventLogger; use OCP\IRequestId; use OCP\PreConditionNotMetException; use OCP\Profiler\IProfiler; +use OCP\Security\ISecureRandom; use OCP\Server; use Psr\Clock\ClockInterface; use Psr\Log\LoggerInterface; @@ -666,7 +667,7 @@ class Connection extends PrimaryReadReplicaConnection { private function getMigrator() { // TODO properly inject those dependencies - $random = \OC::$server->getSecureRandom(); + $random = \OC::$server->get(ISecureRandom::class); $platform = $this->getDatabasePlatform(); $config = \OC::$server->getConfig(); $dispatcher = Server::get(\OCP\EventDispatcher\IEventDispatcher::class); diff --git a/lib/private/Encryption/EncryptionWrapper.php b/lib/private/Encryption/EncryptionWrapper.php index cc1c5326c5c..d3bf0aeb4d8 100644 --- a/lib/private/Encryption/EncryptionWrapper.php +++ b/lib/private/Encryption/EncryptionWrapper.php @@ -12,6 +12,7 @@ use OC\Files\Storage\Wrapper\Encryption; use OC\Files\View; use OC\Memcache\ArrayCache; use OCP\Encryption\IFile; +use OCP\Encryption\Keys\IStorage as EncryptionKeysStorage; use OCP\Files\Mount\IMountPoint; use OCP\Files\Storage\IDisableEncryptionStorage; use OCP\Files\Storage\IStorage; @@ -66,7 +67,7 @@ class EncryptionWrapper { $mountManager = Filesystem::getMountManager(); $uid = $user ? $user->getUID() : null; $fileHelper = \OC::$server->get(IFile::class); - $keyStorage = \OC::$server->getEncryptionKeyStorage(); + $keyStorage = \OC::$server->get(EncryptionKeysStorage::class); $util = new Util( new View(), diff --git a/lib/private/Files/Node/Folder.php b/lib/private/Files/Node/Folder.php index 148dc28318f..51b205d545b 100644 --- a/lib/private/Files/Node/Folder.php +++ b/lib/private/Files/Node/Folder.php @@ -133,7 +133,7 @@ class Folder extends Node implements \OCP\Files\Folder { $fullPath = $this->getFullPath($path); $nonExisting = new NonExistingFolder($this->root, $this->view, $fullPath); $this->sendHooks(['preWrite', 'preCreate'], [$nonExisting]); - if (!$this->view->mkdir($fullPath)) { + if (!$this->view->mkdir($fullPath) && !$this->view->is_dir($fullPath)) { throw new NotPermittedException('Could not create folder "' . $fullPath . '"'); } $parent = dirname($fullPath) === $this->getPath() ? $this : null; diff --git a/lib/private/Files/Storage/DAV.php b/lib/private/Files/Storage/DAV.php index 50e0dd5271a..63ef1399a69 100644 --- a/lib/private/Files/Storage/DAV.php +++ b/lib/private/Files/Storage/DAV.php @@ -86,7 +86,7 @@ class DAV extends Common { */ public function __construct($params) { $this->statCache = new ArrayCache(); - $this->httpClientService = \OC::$server->getHTTPClientService(); + $this->httpClientService = \OC::$server->get(IClientService::class); if (isset($params['host']) && isset($params['user']) && isset($params['password'])) { $host = $params['host']; //remove leading http[s], will be generated in createBaseUri() diff --git a/lib/private/Mail/Mailer.php b/lib/private/Mail/Mailer.php index c4e89df7304..e866cbfdbbc 100644 --- a/lib/private/Mail/Mailer.php +++ b/lib/private/Mail/Mailer.php @@ -9,6 +9,7 @@ declare(strict_types=1); namespace OC\Mail; use Egulias\EmailValidator\EmailValidator; +use Egulias\EmailValidator\Validation\NoRFCWarningsValidation; use Egulias\EmailValidator\Validation\RFCValidation; use OCP\Defaults; use OCP\EventDispatcher\IEventDispatcher; @@ -38,7 +39,7 @@ use Symfony\Component\Mime\Exception\RfcComplianceException; * * Example usage: * - * $mailer = \OC::$server->getMailer(); + * $mailer = \OC::$server->get(\OCP\Mail\IMailer::class); * $message = $mailer->createMessage(); * $message->setSubject('Your Subject'); * $message->setFrom(array('cloud@domain.org' => 'ownCloud Notifier')); @@ -206,8 +207,10 @@ class Mailer implements IMailer { // Shortcut: empty addresses are never valid return false; } + + $strictMailCheck = $this->config->getAppValue('core', 'enforce_strict_email_check', 'yes') === 'yes'; $validator = new EmailValidator(); - $validation = new RFCValidation(); + $validation = $strictMailCheck ? new NoRFCWarningsValidation() : new RFCValidation(); return $validator->isValid($email, $validation); } diff --git a/lib/private/NavigationManager.php b/lib/private/NavigationManager.php index 05a3a9c85fe..5d71c83e77a 100644 --- a/lib/private/NavigationManager.php +++ b/lib/private/NavigationManager.php @@ -95,7 +95,7 @@ class NavigationManager implements INavigationManager { // This is the default app that will always be shown first $entry['default'] = ($entry['app'] ?? false) === $this->defaultApp; // Set order from user defined app order - $entry['order'] = $this->customAppOrder[$id]['order'] ?? $entry['order'] ?? 100; + $entry['order'] = (int)($this->customAppOrder[$id]['order'] ?? $entry['order'] ?? 100); } $this->entries[$id] = $entry; diff --git a/lib/private/Repair.php b/lib/private/Repair.php index fa279325453..b265d5767ea 100644 --- a/lib/private/Repair.php +++ b/lib/private/Repair.php @@ -54,12 +54,14 @@ use OC\Repair\RepairDavShares; use OC\Repair\RepairInvalidShares; use OC\Repair\RepairMimeTypes; use OC\Template\JSCombiner; +use OCA\DAV\Migration\DeleteSchedulingObjects; use OCP\AppFramework\QueryException; use OCP\AppFramework\Utility\ITimeFactory; use OCP\Collaboration\Resources\IManager; use OCP\EventDispatcher\IEventDispatcher; use OCP\Migration\IOutput; use OCP\Migration\IRepairStep; +use OCP\Notification\IManager as INotificationManager; use Psr\Log\LoggerInterface; use Throwable; @@ -168,7 +170,7 @@ class Repair implements IOutput { new AddCleanupUpdaterBackupsJob(\OC::$server->getJobList()), new CleanupCardDAVPhotoCache(\OC::$server->getConfig(), \OC::$server->getAppDataDir('dav-photocache'), \OC::$server->get(LoggerInterface::class)), new AddClenupLoginFlowV2BackgroundJob(\OC::$server->getJobList()), - new RemoveLinkShares(\OC::$server->getDatabaseConnection(), \OC::$server->getConfig(), \OC::$server->getGroupManager(), \OC::$server->getNotificationManager(), \OCP\Server::get(ITimeFactory::class)), + new RemoveLinkShares(\OC::$server->getDatabaseConnection(), \OC::$server->getConfig(), \OC::$server->getGroupManager(), \OC::$server->get(INotificationManager::class), \OCP\Server::get(ITimeFactory::class)), new ClearCollectionsAccessCache(\OC::$server->getConfig(), \OCP\Server::get(IManager::class)), \OCP\Server::get(ResetGeneratedAvatarFlag::class), \OCP\Server::get(EncryptionLegacyCipher::class), @@ -197,6 +199,7 @@ class Repair implements IOutput { return [ new OldGroupMembershipShares(\OC::$server->getDatabaseConnection(), \OC::$server->getGroupManager()), \OC::$server->get(ValidatePhoneNumber::class), + \OC::$server->get(DeleteSchedulingObjects::class), ]; } diff --git a/lib/private/Security/SecureRandom.php b/lib/private/Security/SecureRandom.php index f6257779486..459d43475b7 100644 --- a/lib/private/Security/SecureRandom.php +++ b/lib/private/Security/SecureRandom.php @@ -16,7 +16,7 @@ use OCP\Security\ISecureRandom; * use a fallback. * * Usage: - * \OC::$server->getSecureRandom()->generate(10); + * \OC::$server->get(ISecureRandom::class)->generate(10); * @package OC\Security */ class SecureRandom implements ISecureRandom { diff --git a/lib/private/Setup/PostgreSQL.php b/lib/private/Setup/PostgreSQL.php index 9cee614b7fa..4ece8957ce6 100644 --- a/lib/private/Setup/PostgreSQL.php +++ b/lib/private/Setup/PostgreSQL.php @@ -48,7 +48,7 @@ class PostgreSQL extends AbstractDatabase { //add prefix to the postgresql user name to prevent collisions $this->dbUser = 'oc_' . strtolower($username); //create a new password so we don't need to store the admin config in the config file - $this->dbPassword = \OC::$server->getSecureRandom()->generate(30, ISecureRandom::CHAR_ALPHANUMERIC); + $this->dbPassword = \OC::$server->get(ISecureRandom::class)->generate(30, ISecureRandom::CHAR_ALPHANUMERIC); $this->createDBUser($connection); diff --git a/lib/private/Share20/ProviderFactory.php b/lib/private/Share20/ProviderFactory.php index b7105c3ebca..9716d1e7556 100644 --- a/lib/private/Share20/ProviderFactory.php +++ b/lib/private/Share20/ProviderFactory.php @@ -20,8 +20,12 @@ use OCP\Defaults; use OCP\EventDispatcher\IEventDispatcher; use OCP\Federation\ICloudFederationFactory; use OCP\Files\IRootFolder; +use OCP\Http\Client\IClientService; use OCP\IServerContainer; +use OCP\L10N\IFactory; +use OCP\Mail\IMailer; use OCP\Security\IHasher; +use OCP\Security\ISecureRandom; use OCP\Share\IManager; use OCP\Share\IProviderFactory; use OCP\Share\IShare; @@ -78,9 +82,9 @@ class ProviderFactory implements IProviderFactory { $this->serverContainer->getUserManager(), $this->serverContainer->getGroupManager(), $this->serverContainer->get(IRootFolder::class), - $this->serverContainer->getMailer(), + $this->serverContainer->get(IMailer::class), $this->serverContainer->query(Defaults::class), - $this->serverContainer->getL10NFactory(), + $this->serverContainer->get(IFactory::class), $this->serverContainer->getURLGenerator(), $this->serverContainer->query(ITimeFactory::class), ); @@ -115,7 +119,7 @@ class ProviderFactory implements IProviderFactory { ); $notifications = new Notifications( $addressHandler, - $this->serverContainer->getHTTPClientService(), + $this->serverContainer->get(IClientService::class), $this->serverContainer->query(\OCP\OCS\IDiscoveryService::class), $this->serverContainer->getJobList(), \OC::$server->getCloudFederationProviderManager(), @@ -124,7 +128,7 @@ class ProviderFactory implements IProviderFactory { $this->serverContainer->get(LoggerInterface::class), ); $tokenHandler = new TokenHandler( - $this->serverContainer->getSecureRandom() + $this->serverContainer->get(ISecureRandom::class) ); $this->federatedProvider = new FederatedShareProvider( @@ -166,12 +170,12 @@ class ProviderFactory implements IProviderFactory { $this->shareByMailProvider = new ShareByMailProvider( $this->serverContainer->getConfig(), $this->serverContainer->getDatabaseConnection(), - $this->serverContainer->getSecureRandom(), + $this->serverContainer->get(ISecureRandom::class), $this->serverContainer->getUserManager(), $this->serverContainer->get(IRootFolder::class), $this->serverContainer->getL10N('sharebymail'), $this->serverContainer->get(LoggerInterface::class), - $this->serverContainer->getMailer(), + $this->serverContainer->get(IMailer::class), $this->serverContainer->getURLGenerator(), $this->serverContainer->getActivityManager(), $settingsManager, @@ -208,7 +212,7 @@ class ProviderFactory implements IProviderFactory { if ($this->shareByCircleProvider === null) { $this->shareByCircleProvider = new \OCA\Circles\ShareByCircleProvider( $this->serverContainer->getDatabaseConnection(), - $this->serverContainer->getSecureRandom(), + $this->serverContainer->get(ISecureRandom::class), $this->serverContainer->getUserManager(), $this->serverContainer->get(IRootFolder::class), $this->serverContainer->getL10N('circles'), diff --git a/lib/private/TemplateLayout.php b/lib/private/TemplateLayout.php index 0ff56ece635..2e688f161bb 100644 --- a/lib/private/TemplateLayout.php +++ b/lib/private/TemplateLayout.php @@ -20,6 +20,7 @@ use OCP\IInitialStateService; use OCP\INavigationManager; use OCP\IURLGenerator; use OCP\IUserSession; +use OCP\L10N\IFactory; use OCP\Support\Subscription\IRegistry; use OCP\Util; @@ -97,7 +98,7 @@ class TemplateLayout extends \OC_Template { // Set default app name $defaultApp = \OC::$server->getAppManager()->getDefaultAppForUser(); $defaultAppInfo = \OC::$server->getAppManager()->getAppInfo($defaultApp); - $l10n = \OC::$server->getL10NFactory()->get($defaultApp); + $l10n = \OC::$server->get(IFactory::class)->get($defaultApp); $this->assign('defaultAppName', $l10n->t($defaultAppInfo['name'])); // Add navigation entry @@ -189,8 +190,8 @@ class TemplateLayout extends \OC_Template { parent::__construct('core', 'layout.base'); } // Send the language and the locale to our layouts - $lang = \OC::$server->getL10NFactory()->findLanguage(); - $locale = \OC::$server->getL10NFactory()->findLocale($lang); + $lang = \OC::$server->get(IFactory::class)->findLanguage(); + $locale = \OC::$server->get(IFactory::class)->findLocale($lang); $lang = str_replace('_', '-', $lang); $this->assign('language', $lang); diff --git a/lib/private/User/Session.php b/lib/private/User/Session.php index 9d77a90c541..e5d27172519 100644 --- a/lib/private/User/Session.php +++ b/lib/private/User/Session.php @@ -15,6 +15,7 @@ use OC\Authentication\Token\PublicKeyToken; use OC\Authentication\TwoFactorAuth\Manager as TwoFactorAuthManager; use OC\Hooks\Emitter; use OC\Hooks\PublicEmitter; +use OC\Security\CSRF\CsrfTokenManager; use OC_User; use OC_Util; use OCA\DAV\Connector\Sabre\Auth; @@ -531,7 +532,7 @@ class Session implements IUserSession, Emitter { if ($refreshCsrfToken) { // TODO: mock/inject/use non-static // Refresh the token - \OC::$server->getCsrfTokenManager()->refreshToken(); + \OC::$server->get(CsrfTokenManager::class)->refreshToken(); } if ($firstTimeLogin) { diff --git a/lib/private/User/User.php b/lib/private/User/User.php index 06ec6db6066..644d3e27f88 100644 --- a/lib/private/User/User.php +++ b/lib/private/User/User.php @@ -23,6 +23,7 @@ use OCP\IImage; use OCP\IURLGenerator; use OCP\IUser; use OCP\IUserBackend; +use OCP\Notification\IManager as INotificationManager; use OCP\User\Backend\IGetHomeBackend; use OCP\User\Backend\IProvideAvatarBackend; use OCP\User\Backend\IProvideEnabledStateBackend; @@ -271,9 +272,9 @@ class User implements IUser { $avatarManager = \OCP\Server::get(AvatarManager::class); $avatarManager->deleteUserAvatar($this->uid); - $notification = \OC::$server->getNotificationManager()->createNotification(); + $notification = \OC::$server->get(INotificationManager::class)->createNotification(); $notification->setUser($this->uid); - \OC::$server->getNotificationManager()->markProcessed($notification); + \OC::$server->get(INotificationManager::class)->markProcessed($notification); /** @var AccountManager $accountManager */ $accountManager = \OCP\Server::get(AccountManager::class); diff --git a/lib/private/legacy/OC_Util.php b/lib/private/legacy/OC_Util.php index 8be4c81c2cd..b7836e86d7b 100644 --- a/lib/private/legacy/OC_Util.php +++ b/lib/private/legacy/OC_Util.php @@ -9,10 +9,13 @@ use bantu\IniGetWrapper\IniGetWrapper; use OC\Authentication\TwoFactorAuth\Manager as TwoFactorAuthManager; use OC\Files\SetupManager; use OCP\Files\Template\ITemplateManager; +use OCP\Http\Client\IClientService; use OCP\IConfig; use OCP\IGroupManager; use OCP\IURLGenerator; use OCP\IUser; +use OCP\L10N\IFactory; +use OCP\Security\ISecureRandom; use OCP\Share\IManager; use Psr\Log\LoggerInterface; @@ -126,7 +129,7 @@ class OC_Util { $logger = \OC::$server->get(LoggerInterface::class); $plainSkeletonDirectory = \OC::$server->getConfig()->getSystemValueString('skeletondirectory', \OC::$SERVERROOT . '/core/skeleton'); - $userLang = \OC::$server->getL10NFactory()->findLanguage(); + $userLang = \OC::$server->get(IFactory::class)->findLanguage(); $skeletonDirectory = str_replace('{lang}', $userLang, $plainSkeletonDirectory); if (!file_exists($skeletonDirectory)) { @@ -346,7 +349,7 @@ class OC_Util { */ public static function addTranslations($application, $languageCode = null, $prepend = false) { if (is_null($languageCode)) { - $languageCode = \OC::$server->getL10NFactory()->findLanguage($application); + $languageCode = \OC::$server->get(IFactory::class)->findLanguage($application); } if (!empty($application)) { $path = "$application/l10n/$languageCode"; @@ -780,7 +783,7 @@ class OC_Util { $id = \OC::$server->getSystemConfig()->getValue('instanceid', null); if (is_null($id)) { // We need to guarantee at least one letter in instanceid so it can be used as the session_name - $id = 'oc' . \OC::$server->getSecureRandom()->generate(10, \OCP\Security\ISecureRandom::CHAR_LOWER.\OCP\Security\ISecureRandom::CHAR_DIGITS); + $id = 'oc' . \OC::$server->get(ISecureRandom::class)->generate(10, \OCP\Security\ISecureRandom::CHAR_LOWER.\OCP\Security\ISecureRandom::CHAR_DIGITS); \OC::$server->getSystemConfig()->setValue('instanceid', $id); } return $id; @@ -877,7 +880,7 @@ class OC_Util { // accessing the file via http $url = \OC::$server->getURLGenerator()->getAbsoluteURL(OC::$WEBROOT . '/data' . $fileName); try { - $content = \OC::$server->getHTTPClientService()->newClient()->get($url)->getBody(); + $content = \OC::$server->get(IClientService::class)->newClient()->get($url)->getBody(); } catch (\Exception $e) { $content = false; } @@ -889,7 +892,7 @@ class OC_Util { } try { - $fallbackContent = \OC::$server->getHTTPClientService()->newClient()->get($url)->getBody(); + $fallbackContent = \OC::$server->get(IClientService::class)->newClient()->get($url)->getBody(); } catch (\Exception $e) { $fallbackContent = false; } diff --git a/lib/public/Contacts/IManager.php b/lib/public/Contacts/IManager.php index 7a80a35e045..f19e72e0763 100644 --- a/lib/public/Contacts/IManager.php +++ b/lib/public/Contacts/IManager.php @@ -35,7 +35,7 @@ interface IManager { * Following function shows how to search for contacts for the name and the email address. * * public static function getMatchingRecipient($term) { - * $cm = \OC::$server->getContactsManager(); + * $cm = \OCP\Server::get(\OCP\Contacts\IManager::class); * // The API is not active -> nothing to do * if (!$cm->isEnabled()) { * return array(); diff --git a/lib/public/INavigationManager.php b/lib/public/INavigationManager.php index 5440230e44c..eaef1cb35ec 100644 --- a/lib/public/INavigationManager.php +++ b/lib/public/INavigationManager.php @@ -11,12 +11,10 @@ namespace OCP; /** - * @psalm-type NavigationEntry = array{id: string, order: int, href: string, name: string, app?: string, icon?: string, classes?: string, type?: string} - */ - -/** * Manages the ownCloud navigation * @since 6.0.0 + * + * @psalm-type NavigationEntry = array{id: string, order: int, href: string, name: string, app?: string, icon?: string, classes?: string, type?: string} */ interface INavigationManager { /** diff --git a/lib/public/Mail/IMailer.php b/lib/public/Mail/IMailer.php index dc49ed007b4..93efdce1a2d 100644 --- a/lib/public/Mail/IMailer.php +++ b/lib/public/Mail/IMailer.php @@ -14,7 +14,7 @@ namespace OCP\Mail; * * Example usage: * - * $mailer = \OC::$server->getMailer(); + * $mailer = \OC::$server->get(\OCP\Mail\IMailer::class); * $message = $mailer->createMessage(); * $message->setSubject('Your Subject'); * $message->setFrom(['cloud@domain.org' => 'Nextcloud Notifier']); diff --git a/lib/public/Security/ISecureRandom.php b/lib/public/Security/ISecureRandom.php index 2422fb8b7d6..188236dd3f9 100644 --- a/lib/public/Security/ISecureRandom.php +++ b/lib/public/Security/ISecureRandom.php @@ -14,7 +14,7 @@ namespace OCP\Security; * use a fallback. * * Usage: - * \OC::$server->getSecureRandom()->generate(10); + * \OC::$server->get(ISecureRandom::class)->generate(10); * * @since 8.0.0 */ diff --git a/lib/public/Util.php b/lib/public/Util.php index a8ac1e4ee7c..4cee9addf10 100644 --- a/lib/public/Util.php +++ b/lib/public/Util.php @@ -13,6 +13,9 @@ namespace OCP; use bantu\IniGetWrapper\IniGetWrapper; use OC\AppScriptDependency; use OC\AppScriptSort; +use OC\Security\CSRF\CsrfTokenManager; +use OCP\L10N\IFactory; +use OCP\Mail\IMailer; use OCP\Share\IManager; use Psr\Container\ContainerExceptionInterface; use Psr\Log\LoggerInterface; @@ -206,7 +209,7 @@ class Util { */ public static function addTranslations($application, $languageCode = null, $init = false) { if (is_null($languageCode)) { - $languageCode = \OC::$server->getL10NFactory()->findLanguage($application); + $languageCode = \OC::$server->get(IFactory::class)->findLanguage($application); } if (!empty($application)) { $path = "$application/l10n/$languageCode"; @@ -302,7 +305,7 @@ class Util { $host_name = $config->getSystemValueString('mail_domain', $host_name); $defaultEmailAddress = $user_part.'@'.$host_name; - $mailer = \OC::$server->getMailer(); + $mailer = \OC::$server->get(IMailer::class); if ($mailer->validateMailAddress($defaultEmailAddress)) { return $defaultEmailAddress; } @@ -392,7 +395,7 @@ class Util { */ public static function callRegister() { if (self::$token === '') { - self::$token = \OC::$server->getCsrfTokenManager()->getToken()->getEncryptedValue(); + self::$token = \OC::$server->get(CsrfTokenManager::class)->getToken()->getEncryptedValue(); } return self::$token; } |