aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Server.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/private/Server.php')
-rw-r--r--lib/private/Server.php835
1 files changed, 113 insertions, 722 deletions
diff --git a/lib/private/Server.php b/lib/private/Server.php
index bcdf482f02d..22cd13438b8 100644
--- a/lib/private/Server.php
+++ b/lib/private/Server.php
@@ -1,4 +1,5 @@
<?php
+
/**
* SPDX-FileCopyrightText: 2016 Nextcloud GmbH and Nextcloud contributors
* SPDX-FileCopyrightText: 2016 ownCloud, Inc.
@@ -7,11 +8,11 @@
namespace OC;
use bantu\IniGetWrapper\IniGetWrapper;
+use NCU\Security\Signature\ISignatureManager;
use OC\Accounts\AccountManager;
use OC\App\AppManager;
use OC\App\AppStore\Bundles\BundleFetcher;
use OC\App\AppStore\Fetcher\AppFetcher;
-use OC\App\AppStore\Fetcher\CategoryFetcher;
use OC\AppFramework\Bootstrap\Coordinator;
use OC\AppFramework\Http\Request;
use OC\AppFramework\Http\RequestId;
@@ -44,6 +45,7 @@ use OC\Files\Cache\FileAccess;
use OC\Files\Config\MountProviderCollection;
use OC\Files\Config\UserMountCache;
use OC\Files\Config\UserMountCacheListener;
+use OC\Files\Conversion\ConversionManager;
use OC\Files\Lock\LockManager;
use OC\Files\Mount\CacheMountProvider;
use OC\Files\Mount\LocalHomeMountProvider;
@@ -53,6 +55,7 @@ use OC\Files\Mount\RootMountProvider;
use OC\Files\Node\HookConnector;
use OC\Files\Node\LazyRoot;
use OC\Files\Node\Root;
+use OC\Files\ObjectStore\PrimaryObjectStoreConfig;
use OC\Files\SetupManager;
use OC\Files\Storage\StorageFactory;
use OC\Files\Template\TemplateManager;
@@ -100,8 +103,10 @@ use OC\Security\CSP\ContentSecurityPolicyNonceManager;
use OC\Security\CSRF\CsrfTokenManager;
use OC\Security\CSRF\TokenStorage\SessionStorage;
use OC\Security\Hasher;
+use OC\Security\Ip\RemoteAddress;
use OC\Security\RateLimiting\Limiter;
use OC\Security\SecureRandom;
+use OC\Security\Signature\SignatureManager;
use OC\Security\TrustedDomainHelper;
use OC\Security\VerificationToken\VerificationToken;
use OC\Session\CryptoWrapper;
@@ -111,7 +116,6 @@ use OC\Share20\ProviderFactory;
use OC\Share20\ShareHelper;
use OC\SpeechToText\SpeechToTextManager;
use OC\SystemTag\ManagerFactory as SystemTagManagerFactory;
-use OC\Tagging\TagMapper;
use OC\Talk\Broker;
use OC\Teams\TeamManager;
use OC\Template\JSCombiner;
@@ -121,10 +125,6 @@ use OC\User\DisplayNameCache;
use OC\User\Listeners\BeforeUserDeletedListener;
use OC\User\Listeners\UserChangedListener;
use OC\User\Session;
-use OCA\Files_External\Service\BackendService;
-use OCA\Files_External\Service\GlobalStoragesService;
-use OCA\Files_External\Service\UserGlobalStoragesService;
-use OCA\Files_External\Service\UserStoragesService;
use OCA\Theming\ImageManager;
use OCA\Theming\Service\BackgroundService;
use OCA\Theming\ThemingDefaults;
@@ -135,10 +135,10 @@ use OCP\AppFramework\Utility\ITimeFactory;
use OCP\Authentication\LoginCredentials\IStore;
use OCP\Authentication\Token\IProvider as OCPIProvider;
use OCP\BackgroundJob\IJobList;
-use OCP\Collaboration\AutoComplete\IManager;
use OCP\Collaboration\Reference\IReferenceManager;
use OCP\Command\IBus;
use OCP\Comments\ICommentsManager;
+use OCP\Config\IUserConfig;
use OCP\Contacts\ContactsMenu\IActionFactory;
use OCP\Contacts\ContactsMenu\IContactsStore;
use OCP\Defaults;
@@ -153,6 +153,7 @@ use OCP\Federation\ICloudIdManager;
use OCP\Files\Cache\IFileAccess;
use OCP\Files\Config\IMountProviderCollection;
use OCP\Files\Config\IUserMountCache;
+use OCP\Files\Conversion\IConversionManager;
use OCP\Files\IMimeTypeDetector;
use OCP\Files\IMimeTypeLoader;
use OCP\Files\IRootFolder;
@@ -162,7 +163,6 @@ use OCP\Files\Storage\IStorageFactory;
use OCP\Files\Template\ITemplateManager;
use OCP\FilesMetadata\IFilesMetadataManager;
use OCP\FullTextSearch\IFullTextSearchManager;
-use OCP\GlobalScale\IConfig;
use OCP\Group\ISubAdmin;
use OCP\Http\Client\IClientService;
use OCP\IAppConfig;
@@ -178,16 +178,13 @@ use OCP\IEventSourceFactory;
use OCP\IGroupManager;
use OCP\IInitialStateService;
use OCP\IL10N;
-use OCP\ILogger;
use OCP\INavigationManager;
use OCP\IPhoneNumberUtil;
use OCP\IPreview;
use OCP\IRequest;
use OCP\IRequestId;
-use OCP\ISearch;
use OCP\IServerContainer;
use OCP\ISession;
-use OCP\ITagManager;
use OCP\ITempManager;
use OCP\IURLGenerator;
use OCP\IUserManager;
@@ -199,6 +196,7 @@ use OCP\Lock\ILockingProvider;
use OCP\Lockdown\ILockdownManager;
use OCP\Log\ILogFactory;
use OCP\Mail\IMailer;
+use OCP\OCM\ICapabilityAwareOCMProvider;
use OCP\OCM\IOCMDiscoveryService;
use OCP\OCM\IOCMProvider;
use OCP\Preview\IMimeIconProvider;
@@ -206,17 +204,19 @@ use OCP\Profile\IProfileManager;
use OCP\Profiler\IProfiler;
use OCP\Remote\Api\IApiFactory;
use OCP\Remote\IInstanceFactory;
+use OCP\RichObjectStrings\IRichTextFormatter;
use OCP\RichObjectStrings\IValidator;
use OCP\Route\IRouter;
use OCP\Security\Bruteforce\IThrottler;
-use OCP\Security\IContentSecurityPolicyManager;
use OCP\Security\ICredentialsManager;
use OCP\Security\ICrypto;
use OCP\Security\IHasher;
+use OCP\Security\Ip\IRemoteAddress;
use OCP\Security\ISecureRandom;
use OCP\Security\ITrustedDomainHelper;
use OCP\Security\RateLimiting\ILimiter;
use OCP\Security\VerificationToken\IVerificationToken;
+use OCP\ServerVersion;
use OCP\Settings\IDeclarativeManager;
use OCP\SetupCheck\ISetupCheckManager;
use OCP\Share\IProviderFactory;
@@ -237,7 +237,6 @@ use OCP\User\Events\UserLoggedInEvent;
use OCP\User\Events\UserLoggedInWithCookieEvent;
use OCP\User\Events\UserLoggedOutEvent;
use OCP\User\IAvailabilityCoordinator;
-use Psr\Container\ContainerExceptionInterface;
use Psr\Container\ContainerInterface;
use Psr\Log\LoggerInterface;
@@ -267,28 +266,21 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerService(ContainerInterface::class, function (ContainerInterface $c) {
return $c;
});
- $this->registerService(\OCP\IServerContainer::class, function (ContainerInterface $c) {
- return $c;
- });
+ $this->registerDeprecatedAlias(\OCP\IServerContainer::class, ContainerInterface::class);
$this->registerAlias(\OCP\Calendar\IManager::class, \OC\Calendar\Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CalendarManager', \OC\Calendar\Manager::class);
$this->registerAlias(\OCP\Calendar\Resource\IManager::class, \OC\Calendar\Resource\Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CalendarResourceBackendManager', \OC\Calendar\Resource\Manager::class);
$this->registerAlias(\OCP\Calendar\Room\IManager::class, \OC\Calendar\Room\Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CalendarRoomBackendManager', \OC\Calendar\Room\Manager::class);
$this->registerAlias(\OCP\Contacts\IManager::class, \OC\ContactsManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('ContactsManager', \OCP\Contacts\IManager::class);
+
+ $this->registerAlias(\OCP\ContextChat\IContentManager::class, \OC\ContextChat\ContentManager::class);
$this->registerAlias(\OCP\DirectEditing\IManager::class, \OC\DirectEditing\Manager::class);
$this->registerAlias(ITemplateManager::class, TemplateManager::class);
+ $this->registerAlias(\OCP\Template\ITemplateManager::class, \OC\Template\TemplateManager::class);
$this->registerAlias(IActionFactory::class, ActionFactory::class);
@@ -313,8 +305,6 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(IMagickSupport::class)
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('PreviewManager', IPreview::class);
$this->registerAlias(IMimeIconProvider::class, MimeIconProvider::class);
$this->registerService(\OC\Preview\Watcher::class, function (ContainerInterface $c) {
@@ -330,7 +320,7 @@ class Server extends ServerContainer implements IServerContainer {
return new Profiler($c->get(SystemConfig::class));
});
- $this->registerService(\OCP\Encryption\IManager::class, function (Server $c): Encryption\Manager {
+ $this->registerService(Encryption\Manager::class, function (Server $c): Encryption\Manager {
$view = new View();
$util = new Encryption\Util(
$view,
@@ -347,11 +337,8 @@ class Server extends ServerContainer implements IServerContainer {
new ArrayCache()
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('EncryptionManager', \OCP\Encryption\IManager::class);
+ $this->registerAlias(\OCP\Encryption\IManager::class, Encryption\Manager::class);
- /** @deprecated 21.0.0 */
- $this->registerDeprecatedAlias('EncryptionFileHelper', IFile::class);
$this->registerService(IFile::class, function (ContainerInterface $c) {
$util = new Encryption\Util(
new View(),
@@ -366,8 +353,6 @@ class Server extends ServerContainer implements IServerContainer {
);
});
- /** @deprecated 21.0.0 */
- $this->registerDeprecatedAlias('EncryptionKeyStorage', IStorage::class);
$this->registerService(IStorage::class, function (ContainerInterface $c) {
$view = new View();
$util = new Encryption\Util(
@@ -384,12 +369,8 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(\OCP\IConfig::class)
);
});
- /** @deprecated 20.0.0 */
- $this->registerDeprecatedAlias('TagMapper', TagMapper::class);
$this->registerAlias(\OCP\ITagManager::class, TagManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('TagManager', \OCP\ITagManager::class);
$this->registerService('SystemTagManagerFactory', function (ContainerInterface $c) {
/** @var \OCP\IConfig $config */
@@ -425,7 +406,8 @@ class Server extends ServerContainer implements IServerContainer {
$previewConnector = new \OC\Preview\WatcherConnector(
$root,
- $c->get(SystemConfig::class)
+ $c->get(SystemConfig::class),
+ $this->get(IEventDispatcher::class)
);
$previewConnector->connectWatcher();
@@ -440,19 +422,12 @@ class Server extends ServerContainer implements IServerContainer {
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('SystemTagObjectMapper', ISystemTagObjectMapper::class);
-
$this->registerService(IRootFolder::class, function (ContainerInterface $c) {
return new LazyRoot(function () use ($c) {
return $c->get('RootFolder');
});
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('LazyRootFolder', IRootFolder::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('UserManager', \OC\User\Manager::class);
$this->registerAlias(\OCP\IUserManager::class, \OC\User\Manager::class);
$this->registerService(DisplayNameCache::class, function (ContainerInterface $c) {
@@ -464,12 +439,11 @@ class Server extends ServerContainer implements IServerContainer {
$this->get(IUserManager::class),
$this->get(IEventDispatcher::class),
$this->get(LoggerInterface::class),
- $this->get(ICacheFactory::class)
+ $this->get(ICacheFactory::class),
+ $this->get(IRemoteAddress::class),
);
return $groupManager;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('GroupManager', \OCP\IGroupManager::class);
$this->registerService(Store::class, function (ContainerInterface $c) {
$session = $c->get(ISession::class);
@@ -479,7 +453,8 @@ class Server extends ServerContainer implements IServerContainer {
$tokenProvider = null;
}
$logger = $c->get(LoggerInterface::class);
- return new Store($session, $logger, $tokenProvider);
+ $crypto = $c->get(ICrypto::class);
+ return new Store($session, $logger, $crypto, $tokenProvider);
});
$this->registerAlias(IStore::class, Store::class);
$this->registerAlias(IProvider::class, Authentication\Token\Manager::class);
@@ -487,7 +462,7 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerService(\OC\User\Session::class, function (Server $c) {
$manager = $c->get(IUserManager::class);
- $session = new \OC\Session\Memory('');
+ $session = new \OC\Session\Memory();
$timeFactory = new TimeFactory();
// Token providers might require a working database. This code
// might however be called when Nextcloud is not yet setup.
@@ -506,7 +481,7 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(ISecureRandom::class),
$c->get('LockdownManager'),
$c->get(LoggerInterface::class),
- $c->get(IEventDispatcher::class)
+ $c->get(IEventDispatcher::class),
);
/** @deprecated 21.0.0 use BeforeUserCreatedEvent event with the IEventDispatcher instead */
$userSession->listen('\OC\User', 'preCreateUser', function ($uid, $password) {
@@ -582,28 +557,20 @@ class Server extends ServerContainer implements IServerContainer {
return $userSession;
});
$this->registerAlias(\OCP\IUserSession::class, \OC\User\Session::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('UserSession', \OC\User\Session::class);
$this->registerAlias(\OCP\Authentication\TwoFactorAuth\IRegistry::class, \OC\Authentication\TwoFactorAuth\Registry::class);
$this->registerAlias(INavigationManager::class, \OC\NavigationManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('NavigationManager', INavigationManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('AllConfig', \OC\AllConfig::class);
$this->registerAlias(\OCP\IConfig::class, \OC\AllConfig::class);
$this->registerService(\OC\SystemConfig::class, function ($c) use ($config) {
return new \OC\SystemConfig($config);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('SystemConfig', \OC\SystemConfig::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('AppConfig', \OC\AppConfig::class);
$this->registerAlias(IAppConfig::class, \OC\AppConfig::class);
+ $this->registerAlias(IUserConfig::class, \OC\Config\UserConfig::class);
+ $this->registerAlias(IAppManager::class, AppManager::class);
$this->registerService(IFactory::class, function (Server $c) {
return new \OC\L10N\Factory(
@@ -615,70 +582,66 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(IAppManager::class),
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('L10NFactory', IFactory::class);
$this->registerAlias(IURLGenerator::class, URLGenerator::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('URLGenerator', IURLGenerator::class);
-
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('AppFetcher', AppFetcher::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CategoryFetcher', CategoryFetcher::class);
$this->registerService(ICache::class, function ($c) {
return new Cache\File();
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('UserCache', ICache::class);
$this->registerService(Factory::class, function (Server $c) {
$profiler = $c->get(IProfiler::class);
- $arrayCacheFactory = new \OC\Memcache\Factory('', $c->get(LoggerInterface::class),
+ $arrayCacheFactory = new \OC\Memcache\Factory(fn () => '', $c->get(LoggerInterface::class),
$profiler,
ArrayCache::class,
ArrayCache::class,
ArrayCache::class
);
- /** @var \OCP\IConfig $config */
- $config = $c->get(\OCP\IConfig::class);
-
- if ($config->getSystemValueBool('installed', false) && !(defined('PHPUNIT_RUN') && PHPUNIT_RUN)) {
- if (!$config->getSystemValueBool('log_query')) {
- try {
- $v = \OC_App::getAppVersions();
- } catch (\Doctrine\DBAL\Exception $e) {
- // Database service probably unavailable
- // Probably related to https://github.com/nextcloud/server/issues/37424
- return $arrayCacheFactory;
+ /** @var SystemConfig $config */
+ $config = $c->get(SystemConfig::class);
+ /** @var ServerVersion $serverVersion */
+ $serverVersion = $c->get(ServerVersion::class);
+
+ if ($config->getValue('installed', false) && !(defined('PHPUNIT_RUN') && PHPUNIT_RUN)) {
+ $logQuery = $config->getValue('log_query');
+ $prefixClosure = function () use ($logQuery, $serverVersion): ?string {
+ if (!$logQuery) {
+ try {
+ $v = \OCP\Server::get(IAppConfig::class)->getAppInstalledVersions(true);
+ } catch (\Doctrine\DBAL\Exception $e) {
+ // Database service probably unavailable
+ // Probably related to https://github.com/nextcloud/server/issues/37424
+ return null;
+ }
+ } else {
+ // If the log_query is enabled, we can not get the app versions
+ // as that does a query, which will be logged and the logging
+ // depends on redis and here we are back again in the same function.
+ $v = [
+ 'log_query' => 'enabled',
+ ];
}
- } else {
- // If the log_query is enabled, we can not get the app versions
- // as that does a query, which will be logged and the logging
- // depends on redis and here we are back again in the same function.
- $v = [
- 'log_query' => 'enabled',
- ];
- }
- $v['core'] = implode(',', \OC_Util::getVersion());
- $version = implode(',', $v);
- $instanceId = \OC_Util::getInstanceId();
- $path = \OC::$SERVERROOT;
- $prefix = md5($instanceId . '-' . $version . '-' . $path);
- return new \OC\Memcache\Factory($prefix,
+ $v['core'] = implode(',', $serverVersion->getVersion());
+ $version = implode(',', array_keys($v)) . implode(',', $v);
+ $instanceId = \OC_Util::getInstanceId();
+ $path = \OC::$SERVERROOT;
+ return md5($instanceId . '-' . $version . '-' . $path);
+ };
+ return new \OC\Memcache\Factory($prefixClosure,
$c->get(LoggerInterface::class),
$profiler,
- $config->getSystemValue('memcache.local', null),
- $config->getSystemValue('memcache.distributed', null),
- $config->getSystemValue('memcache.locking', null),
- $config->getSystemValueString('redis_log_file')
+ /** @psalm-taint-escape callable */
+ $config->getValue('memcache.local', null),
+ /** @psalm-taint-escape callable */
+ $config->getValue('memcache.distributed', null),
+ /** @psalm-taint-escape callable */
+ $config->getValue('memcache.locking', null),
+ /** @psalm-taint-escape callable */
+ $config->getValue('redis_log_file')
);
}
return $arrayCacheFactory;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('MemCacheFactory', Factory::class);
$this->registerAlias(ICacheFactory::class, Factory::class);
$this->registerService('RedisFactory', function (Server $c) {
@@ -693,11 +656,11 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(IUserSession::class),
$c->get(\OCP\IConfig::class),
$c->get(IValidator::class),
- $l10n
+ $c->get(IRichTextFormatter::class),
+ $l10n,
+ $c->get(ITimeFactory::class),
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('ActivityManager', \OCP\Activity\IManager::class);
$this->registerService(\OCP\Activity\IEventMerger::class, function (Server $c) {
return new \OC\Activity\EventMerger(
@@ -720,24 +683,20 @@ class Server extends ServerContainer implements IServerContainer {
});
$this->registerAlias(IAvatarManager::class, AvatarManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('AvatarManager', AvatarManager::class);
$this->registerAlias(\OCP\Support\CrashReport\IRegistry::class, \OC\Support\CrashReport\Registry::class);
$this->registerAlias(\OCP\Support\Subscription\IRegistry::class, \OC\Support\Subscription\Registry::class);
$this->registerAlias(\OCP\Support\Subscription\IAssertion::class, \OC\Support\Subscription\Assertion::class);
+ /** Only used by the PsrLoggerAdapter should not be used by apps */
$this->registerService(\OC\Log::class, function (Server $c) {
$logType = $c->get(AllConfig::class)->getSystemValue('log_type', 'file');
$factory = new LogFactory($c, $this->get(SystemConfig::class));
$logger = $factory->get($logType);
$registry = $c->get(\OCP\Support\CrashReport\IRegistry::class);
- return new Log($logger, $this->get(SystemConfig::class), null, $registry);
+ return new Log($logger, $this->get(SystemConfig::class), crashReporters: $registry);
});
- $this->registerAlias(ILogger::class, \OC\Log::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Logger', \OC\Log::class);
// PSR-3 logger
$this->registerAlias(LoggerInterface::class, PsrLoggerAdapter::class);
@@ -746,8 +705,6 @@ class Server extends ServerContainer implements IServerContainer {
});
$this->registerAlias(IJobList::class, \OC\BackgroundJob\JobList::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('JobList', IJobList::class);
$this->registerService(Router::class, function (Server $c) {
$cacheFactory = $c->get(ICacheFactory::class);
@@ -759,12 +716,6 @@ class Server extends ServerContainer implements IServerContainer {
return $router;
});
$this->registerAlias(IRouter::class, Router::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Router', IRouter::class);
-
- $this->registerAlias(ISearch::class, Search::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Search', ISearch::class);
$this->registerService(\OC\Security\RateLimiting\Backend\IBackend::class, function ($c) {
$config = $c->get(\OCP\IConfig::class);
@@ -786,27 +737,19 @@ class Server extends ServerContainer implements IServerContainer {
});
$this->registerAlias(\OCP\Security\ISecureRandom::class, SecureRandom::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('SecureRandom', \OCP\Security\ISecureRandom::class);
$this->registerAlias(\OCP\Security\IRemoteHostValidator::class, \OC\Security\RemoteHostValidator::class);
$this->registerAlias(IVerificationToken::class, VerificationToken::class);
$this->registerAlias(ICrypto::class, Crypto::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Crypto', ICrypto::class);
$this->registerAlias(IHasher::class, Hasher::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Hasher', IHasher::class);
$this->registerAlias(ICredentialsManager::class, CredentialsManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CredentialsManager', ICredentialsManager::class);
$this->registerAlias(IDBConnection::class, ConnectionAdapter::class);
$this->registerService(Connection::class, function (Server $c) {
$systemConfig = $c->get(SystemConfig::class);
- $factory = new \OC\DB\ConnectionFactory($systemConfig);
+ $factory = new \OC\DB\ConnectionFactory($systemConfig, $c->get(ICacheFactory::class));
$type = $systemConfig->getValue('dbtype', 'sqlite');
if (!$factory->isValidType($type)) {
throw new \OC\DatabaseException('Invalid database type');
@@ -814,8 +757,6 @@ class Server extends ServerContainer implements IServerContainer {
$connection = $factory->getConnection($type, []);
return $connection;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('DatabaseConnection', IDBConnection::class);
$this->registerAlias(ICertificateManager::class, CertificateManager::class);
$this->registerAlias(IClientService::class, ClientService::class);
@@ -828,8 +769,6 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerService(IEventLogger::class, function (ContainerInterface $c) {
return new EventLogger($c->get(SystemConfig::class), $c->get(LoggerInterface::class), $c->get(Log::class));
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('EventLogger', IEventLogger::class);
$this->registerService(IQueryLogger::class, function (ContainerInterface $c) {
$queryLogger = new QueryLogger();
@@ -839,31 +778,9 @@ class Server extends ServerContainer implements IServerContainer {
}
return $queryLogger;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('QueryLogger', IQueryLogger::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('TempManager', TempManager::class);
$this->registerAlias(ITempManager::class, TempManager::class);
-
- $this->registerService(AppManager::class, function (ContainerInterface $c) {
- // TODO: use auto-wiring
- return new \OC\App\AppManager(
- $c->get(IUserSession::class),
- $c->get(\OCP\IConfig::class),
- $c->get(IGroupManager::class),
- $c->get(ICacheFactory::class),
- $c->get(IEventDispatcher::class),
- $c->get(LoggerInterface::class),
- );
- });
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('AppManager', AppManager::class);
- $this->registerAlias(IAppManager::class, AppManager::class);
-
$this->registerAlias(IDateTimeZone::class, DateTimeZone::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('DateTimeZone', IDateTimeZone::class);
$this->registerService(IDateTimeFormatter::class, function (Server $c) {
$language = $c->get(\OCP\IConfig::class)->getUserValue($c->get(ISession::class)->get('user_id'), 'core', 'lang', null);
@@ -873,8 +790,6 @@ class Server extends ServerContainer implements IServerContainer {
$c->getL10N('lib', $language)
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('DateTimeFormatter', IDateTimeFormatter::class);
$this->registerService(IUserMountCache::class, function (ContainerInterface $c) {
$mountCache = $c->get(UserMountCache::class);
@@ -882,8 +797,6 @@ class Server extends ServerContainer implements IServerContainer {
$listener->listen($c->get(IUserManager::class));
return $mountCache;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('UserMountCache', IUserMountCache::class);
$this->registerService(IMountProviderCollection::class, function (ContainerInterface $c) {
$loader = $c->get(IStorageFactory::class);
@@ -895,25 +808,22 @@ class Server extends ServerContainer implements IServerContainer {
$config = $c->get(\OCP\IConfig::class);
$logger = $c->get(LoggerInterface::class);
+ $objectStoreConfig = $c->get(PrimaryObjectStoreConfig::class);
$manager->registerProvider(new CacheMountProvider($config));
$manager->registerHomeProvider(new LocalHomeMountProvider());
- $manager->registerHomeProvider(new ObjectHomeMountProvider($config));
- $manager->registerRootProvider(new RootMountProvider($config, $c->get(LoggerInterface::class)));
+ $manager->registerHomeProvider(new ObjectHomeMountProvider($objectStoreConfig));
+ $manager->registerRootProvider(new RootMountProvider($objectStoreConfig, $config));
$manager->registerRootProvider(new ObjectStorePreviewCacheMountProvider($logger, $config));
return $manager;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('MountConfigManager', IMountProviderCollection::class);
- /** @deprecated 20.0.0 */
- $this->registerDeprecatedAlias('IniWrapper', IniGetWrapper::class);
$this->registerService(IBus::class, function (ContainerInterface $c) {
$busClass = $c->get(\OCP\IConfig::class)->getSystemValueString('commandbus');
if ($busClass) {
[$app, $class] = explode('::', $busClass, 2);
- if ($c->get(IAppManager::class)->isInstalled($app)) {
- \OC_App::loadApp($app);
+ if ($c->get(IAppManager::class)->isEnabledForUser($app)) {
+ $c->get(IAppManager::class)->loadApp($app);
return $c->get($class);
} else {
throw new ServiceUnavailableException("The app providing the command bus ($app) is not enabled");
@@ -924,16 +834,13 @@ class Server extends ServerContainer implements IServerContainer {
}
});
$this->registerDeprecatedAlias('AsyncCommandBus', IBus::class);
- /** @deprecated 20.0.0 */
- $this->registerDeprecatedAlias('TrustedDomainHelper', TrustedDomainHelper::class);
$this->registerAlias(ITrustedDomainHelper::class, TrustedDomainHelper::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Throttler', Throttler::class);
$this->registerAlias(IThrottler::class, Throttler::class);
$this->registerService(\OC\Security\Bruteforce\Backend\IBackend::class, function ($c) {
$config = $c->get(\OCP\IConfig::class);
- if (ltrim($config->getSystemValueString('memcache.distributed', ''), '\\') === \OC\Memcache\Redis::class) {
+ if (!$config->getSystemValueBool('auth.bruteforce.protection.force.database', false)
+ && ltrim($config->getSystemValueString('memcache.distributed', ''), '\\') === \OC\Memcache\Redis::class) {
$backend = $c->get(\OC\Security\Bruteforce\Backend\MemoryCacheBackend::class);
} else {
$backend = $c->get(\OC\Security\Bruteforce\Backend\DatabaseBackend::class);
@@ -944,28 +851,29 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerDeprecatedAlias('IntegrityCodeChecker', Checker::class);
$this->registerService(Checker::class, function (ContainerInterface $c) {
- // IConfig and IAppManager requires a working database. This code
- // might however be called when ownCloud is not yet setup.
+ // IConfig requires a working database. This code
+ // might however be called when Nextcloud is not yet setup.
if (\OC::$server->get(SystemConfig::class)->getValue('installed', false)) {
$config = $c->get(\OCP\IConfig::class);
$appConfig = $c->get(\OCP\IAppConfig::class);
- $appManager = $c->get(IAppManager::class);
} else {
- $config = $appConfig = $appManager = null;
+ $config = null;
+ $appConfig = null;
}
return new Checker(
- new EnvironmentHelper(),
+ $c->get(ServerVersion::class),
+ $c->get(EnvironmentHelper::class),
new FileAccessHelper(),
new AppLocator(),
$config,
$appConfig,
$c->get(ICacheFactory::class),
- $appManager,
+ $c->get(IAppManager::class),
$c->get(IMimeTypeDetector::class)
);
});
- $this->registerService(\OCP\IRequest::class, function (ContainerInterface $c) {
+ $this->registerService(Request::class, function (ContainerInterface $c) {
if (isset($this['urlParams'])) {
$urlParams = $this['urlParams'];
} else {
@@ -999,8 +907,7 @@ class Server extends ServerContainer implements IServerContainer {
$stream
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Request', \OCP\IRequest::class);
+ $this->registerAlias(\OCP\IRequest::class, Request::class);
$this->registerService(IRequestId::class, function (ContainerInterface $c): IRequestId {
return new RequestId(
@@ -1020,11 +927,9 @@ class Server extends ServerContainer implements IServerContainer {
$c->get(IFactory::class)
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Mailer', IMailer::class);
- /** @deprecated 21.0.0 */
- $this->registerDeprecatedAlias('LDAPProvider', ILDAPProvider::class);
+ /** @since 30.0.0 */
+ $this->registerAlias(\OCP\Mail\Provider\IManager::class, \OC\Mail\Provider\Manager::class);
$this->registerService(ILDAPProviderFactory::class, function (ContainerInterface $c) {
$config = $c->get(\OCP\IConfig::class);
@@ -1060,8 +965,6 @@ class Server extends ServerContainer implements IServerContainer {
}
return new NoopLockingProvider();
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('LockingProvider', ILockingProvider::class);
$this->registerService(ILockManager::class, function (Server $c): LockManager {
return new LockManager();
@@ -1073,8 +976,6 @@ class Server extends ServerContainer implements IServerContainer {
return $c->get(\OC\Files\Mount\Manager::class)->getSetupManager();
});
$this->registerAlias(IMountManager::class, \OC\Files\Mount\Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('MountManager', IMountManager::class);
$this->registerService(IMimeTypeDetector::class, function (ContainerInterface $c) {
return new \OC\Files\Type\Detection(
@@ -1084,18 +985,12 @@ class Server extends ServerContainer implements IServerContainer {
\OC::$SERVERROOT . '/resources/config/'
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('MimeTypeDetector', IMimeTypeDetector::class);
$this->registerAlias(IMimeTypeLoader::class, Loader::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('MimeTypeLoader', IMimeTypeLoader::class);
$this->registerService(BundleFetcher::class, function () {
return new BundleFetcher($this->getL10N('lib'));
});
$this->registerAlias(\OCP\Notification\IManager::class, Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('NotificationManager', \OCP\Notification\IManager::class);
$this->registerService(CapabilitiesManager::class, function (ContainerInterface $c) {
$manager = new CapabilitiesManager($c->get(LoggerInterface::class));
@@ -1107,8 +1002,6 @@ class Server extends ServerContainer implements IServerContainer {
});
return $manager;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CapabilitiesManager', CapabilitiesManager::class);
$this->registerService(ICommentsManager::class, function (Server $c) {
$config = $c->get(\OCP\IConfig::class);
@@ -1129,8 +1022,6 @@ class Server extends ServerContainer implements IServerContainer {
return $manager;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CommentsManager', ICommentsManager::class);
$this->registerAlias(\OC_Defaults::class, 'ThemingDefaults');
$this->registerService('ThemingDefaults', function (Server $c) {
@@ -1141,10 +1032,11 @@ class Server extends ServerContainer implements IServerContainer {
$classExists = false;
}
- if ($classExists && $c->get(\OCP\IConfig::class)->getSystemValueBool('installed', false) && $c->get(IAppManager::class)->isInstalled('theming') && $c->get(TrustedDomainHelper::class)->isTrustedDomain($c->getRequest()->getInsecureServerHost())) {
+ if ($classExists && $c->get(\OCP\IConfig::class)->getSystemValueBool('installed', false) && $c->get(IAppManager::class)->isEnabledForAnyone('theming') && $c->get(TrustedDomainHelper::class)->isTrustedDomain($c->getRequest()->getInsecureServerHost())) {
$backgroundService = new BackgroundService(
$c->get(IRootFolder::class),
$c->getAppDataDir('theming'),
+ $c->get(IAppConfig::class),
$c->get(\OCP\IConfig::class),
$c->get(ISession::class)->get('user_id'),
);
@@ -1159,11 +1051,12 @@ class Server extends ServerContainer implements IServerContainer {
);
return new ThemingDefaults(
$c->get(\OCP\IConfig::class),
+ $c->get(\OCP\IAppConfig::class),
$c->getL10N('theming'),
$c->get(IUserSession::class),
$c->get(IURLGenerator::class),
$c->get(ICacheFactory::class),
- new Util($c->get(\OCP\IConfig::class), $this->get(IAppManager::class), $c->getAppDataDir('theming'), $imageManager),
+ new Util($c->get(ServerVersion::class), $c->get(\OCP\IConfig::class), $this->get(IAppManager::class), $c->getAppDataDir('theming'), $imageManager),
$imageManager,
$c->get(IAppManager::class),
$c->get(INavigationManager::class),
@@ -1202,31 +1095,24 @@ class Server extends ServerContainer implements IServerContainer {
);
return new CryptoWrapper(
- $c->get(\OCP\IConfig::class),
$c->get(ICrypto::class),
$c->get(ISecureRandom::class),
$request
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CsrfTokenManager', CsrfTokenManager::class);
$this->registerService(SessionStorage::class, function (ContainerInterface $c) {
return new SessionStorage($c->get(ISession::class));
});
$this->registerAlias(\OCP\Security\IContentSecurityPolicyManager::class, ContentSecurityPolicyManager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('ContentSecurityPolicyManager', ContentSecurityPolicyManager::class);
$this->registerService(IProviderFactory::class, function (ContainerInterface $c) {
$config = $c->get(\OCP\IConfig::class);
$factoryClass = $config->getSystemValue('sharing.managerFactory', ProviderFactory::class);
/** @var \OCP\Share\IProviderFactory $factory */
- return new $factoryClass($this);
+ return $c->get($factoryClass);
});
$this->registerAlias(\OCP\Share\IManager::class, \OC\Share20\Manager::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('ShareManager', \OCP\Share\IManager::class);
$this->registerService(\OCP\Collaboration\Collaborators\ISearch::class, function (Server $c) {
$instance = new Collaboration\Collaborators\Search($c);
@@ -1240,8 +1126,6 @@ class Server extends ServerContainer implements IServerContainer {
return $instance;
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('CollaboratorSearch', \OCP\Collaboration\Collaborators\ISearch::class);
$this->registerAlias(\OCP\Collaboration\Collaborators\ISearchResult::class, \OC\Collaboration\Collaborators\SearchResult::class);
$this->registerAlias(\OCP\Collaboration\AutoComplete\IManager::class, \OC\Collaboration\AutoComplete\Manager::class);
@@ -1277,47 +1161,30 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerService(ICloudIdManager::class, function (ContainerInterface $c) {
return new CloudIdManager(
+ $c->get(ICacheFactory::class),
+ $c->get(IEventDispatcher::class),
$c->get(\OCP\Contacts\IManager::class),
$c->get(IURLGenerator::class),
$c->get(IUserManager::class),
- $c->get(ICacheFactory::class),
- $c->get(IEventDispatcher::class),
);
});
$this->registerAlias(\OCP\GlobalScale\IConfig::class, \OC\GlobalScale\Config::class);
-
- $this->registerService(ICloudFederationProviderManager::class, function (ContainerInterface $c) {
- return new CloudFederationProviderManager(
- $c->get(\OCP\IConfig::class),
- $c->get(IAppManager::class),
- $c->get(IClientService::class),
- $c->get(ICloudIdManager::class),
- $c->get(IOCMDiscoveryService::class),
- $c->get(LoggerInterface::class)
- );
- });
-
+ $this->registerAlias(ICloudFederationProviderManager::class, CloudFederationProviderManager::class);
$this->registerService(ICloudFederationFactory::class, function (Server $c) {
return new CloudFederationFactory();
});
$this->registerAlias(\OCP\AppFramework\Utility\IControllerMethodReflector::class, \OC\AppFramework\Utility\ControllerMethodReflector::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('ControllerMethodReflector', \OCP\AppFramework\Utility\IControllerMethodReflector::class);
$this->registerAlias(\OCP\AppFramework\Utility\ITimeFactory::class, \OC\AppFramework\Utility\TimeFactory::class);
$this->registerAlias(\Psr\Clock\ClockInterface::class, \OCP\AppFramework\Utility\ITimeFactory::class);
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('TimeFactory', \OCP\AppFramework\Utility\ITimeFactory::class);
$this->registerService(Defaults::class, function (Server $c) {
return new Defaults(
$c->get('ThemingDefaults')
);
});
- /** @deprecated 19.0.0 */
- $this->registerDeprecatedAlias('Defaults', \OCP\Defaults::class);
$this->registerService(\OCP\ISession::class, function (ContainerInterface $c) {
return $c->get(\OCP\IUserSession::class)->getSession();
@@ -1371,12 +1238,16 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerAlias(\OCP\Files\AppData\IAppDataFactory::class, \OC\Files\AppData\Factory::class);
+ $this->registerAlias(\OCP\Files\IFilenameValidator::class, \OC\Files\FilenameValidator::class);
+
$this->registerAlias(IBinaryFinder::class, BinaryFinder::class);
$this->registerAlias(\OCP\Share\IPublicShareTemplateFactory::class, \OC\Share20\PublicShareTemplateFactory::class);
$this->registerAlias(ITranslationManager::class, TranslationManager::class);
+ $this->registerAlias(IConversionManager::class, ConversionManager::class);
+
$this->registerAlias(ISpeechToTextManager::class, SpeechToTextManager::class);
$this->registerAlias(IEventSourceFactory::class, EventSourceFactory::class);
@@ -1389,7 +1260,8 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerAlias(IPhoneNumberUtil::class, PhoneNumberUtil::class);
- $this->registerAlias(IOCMProvider::class, OCMProvider::class);
+ $this->registerAlias(ICapabilityAwareOCMProvider::class, OCMProvider::class);
+ $this->registerDeprecatedAlias(IOCMProvider::class, OCMProvider::class);
$this->registerAlias(ISetupCheckManager::class, SetupCheckManager::class);
@@ -1401,6 +1273,14 @@ class Server extends ServerContainer implements IServerContainer {
$this->registerAlias(\OCP\TaskProcessing\IManager::class, \OC\TaskProcessing\Manager::class);
+ $this->registerAlias(IRemoteAddress::class, RemoteAddress::class);
+
+ $this->registerAlias(\OCP\Security\Ip\IFactory::class, \OC\Security\Ip\Factory::class);
+
+ $this->registerAlias(IRichTextFormatter::class, \OC\RichObjectStrings\RichTextFormatter::class);
+
+ $this->registerAlias(ISignatureManager::class, SignatureManager::class);
+
$this->connectDispatcher();
}
@@ -1410,30 +1290,6 @@ class Server extends ServerContainer implements IServerContainer {
$hookConnector->viewToNode();
}
- /**
- * @return \OCP\Calendar\IManager
- * @deprecated 20.0.0
- */
- public function getCalendarManager() {
- return $this->get(\OC\Calendar\Manager::class);
- }
-
- /**
- * @return \OCP\Calendar\Resource\IManager
- * @deprecated 20.0.0
- */
- public function getCalendarResourceBackendManager() {
- return $this->get(\OC\Calendar\Resource\Manager::class);
- }
-
- /**
- * @return \OCP\Calendar\Room\IManager
- * @deprecated 20.0.0
- */
- public function getCalendarRoomBackendManager() {
- return $this->get(\OC\Calendar\Room\Manager::class);
- }
-
private function connectDispatcher(): void {
/** @var IEventDispatcher $eventDispatcher */
$eventDispatcher = $this->get(IEventDispatcher::class);
@@ -1471,14 +1327,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return \OCP\Encryption\Keys\IStorage
- * @deprecated 20.0.0
- */
- public function getEncryptionKeyStorage() {
- return $this->get(IStorage::class);
- }
-
- /**
* The current request object holding all information about the request
* currently being processed is returned from this method.
* In case the current execution was not initiated by a web request null is returned
@@ -1491,61 +1339,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns the preview manager which can create preview images for a given file
- *
- * @return IPreview
- * @deprecated 20.0.0
- */
- public function getPreviewManager() {
- return $this->get(IPreview::class);
- }
-
- /**
- * Returns the tag manager which can get and set tags for different object types
- *
- * @see \OCP\ITagManager::load()
- * @return ITagManager
- * @deprecated 20.0.0
- */
- public function getTagManager() {
- return $this->get(ITagManager::class);
- }
-
- /**
- * Returns the system-tag manager
- *
- * @return ISystemTagManager
- *
- * @since 9.0.0
- * @deprecated 20.0.0
- */
- public function getSystemTagManager() {
- return $this->get(ISystemTagManager::class);
- }
-
- /**
- * Returns the system-tag object mapper
- *
- * @return ISystemTagObjectMapper
- *
- * @since 9.0.0
- * @deprecated 20.0.0
- */
- public function getSystemTagObjectMapper() {
- return $this->get(ISystemTagObjectMapper::class);
- }
-
- /**
- * Returns the avatar manager, used for avatar functionality
- *
- * @return IAvatarManager
- * @deprecated 20.0.0
- */
- public function getAvatarManager() {
- return $this->get(IAvatarManager::class);
- }
-
- /**
* Returns the root folder of ownCloud's data directory
*
* @return IRootFolder
@@ -1629,22 +1422,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return \OC\Authentication\TwoFactorAuth\Manager
- * @deprecated 20.0.0
- */
- public function getTwoFactorAuthManager() {
- return $this->get(\OC\Authentication\TwoFactorAuth\Manager::class);
- }
-
- /**
- * @return \OC\NavigationManager
- * @deprecated 20.0.0
- */
- public function getNavigationManager() {
- return $this->get(INavigationManager::class);
- }
-
- /**
* @return \OCP\IConfig
* @deprecated 20.0.0
*/
@@ -1661,16 +1438,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns the app config manager
- *
- * @return IAppConfig
- * @deprecated 20.0.0
- */
- public function getAppConfig() {
- return $this->get(IAppConfig::class);
- }
-
- /**
* @return IFactory
* @deprecated 20.0.0
*/
@@ -1699,14 +1466,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return AppFetcher
- * @deprecated 20.0.0
- */
- public function getAppFetcher() {
- return $this->get(AppFetcher::class);
- }
-
- /**
* Returns an ICache instance. Since 8.1.0 it returns a fake cache. Use
* getMemCacheFactory() instead.
*
@@ -1728,17 +1487,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns an \OC\RedisFactory instance
- *
- * @return \OC\RedisFactory
- * @deprecated 20.0.0
- */
- public function getGetRedisFactory() {
- return $this->get('RedisFactory');
- }
-
-
- /**
* Returns the current session
*
* @return \OCP\IDBConnection
@@ -1769,45 +1517,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns a logger instance
- *
- * @return ILogger
- * @deprecated 20.0.0
- */
- public function getLogger() {
- return $this->get(ILogger::class);
- }
-
- /**
- * @return ILogFactory
- * @throws \OCP\AppFramework\QueryException
- * @deprecated 20.0.0
- */
- public function getLogFactory() {
- return $this->get(ILogFactory::class);
- }
-
- /**
- * Returns a router for generating and matching urls
- *
- * @return IRouter
- * @deprecated 20.0.0
- */
- public function getRouter() {
- return $this->get(IRouter::class);
- }
-
- /**
- * Returns a search instance
- *
- * @return ISearch
- * @deprecated 20.0.0
- */
- public function getSearch() {
- return $this->get(ISearch::class);
- }
-
- /**
* Returns a SecureRandom instance
*
* @return \OCP\Security\ISecureRandom
@@ -1838,16 +1547,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns a CredentialsManager instance
- *
- * @return ICredentialsManager
- * @deprecated 20.0.0
- */
- public function getCredentialsManager() {
- return $this->get(ICredentialsManager::class);
- }
-
- /**
* Get the certificate manager
*
* @return \OCP\ICertificateManager
@@ -1857,40 +1556,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Returns an instance of the HTTP client service
- *
- * @return IClientService
- * @deprecated 20.0.0
- */
- public function getHTTPClientService() {
- return $this->get(IClientService::class);
- }
-
- /**
- * Get the active event logger
- *
- * The returned logger only logs data when debug mode is enabled
- *
- * @return IEventLogger
- * @deprecated 20.0.0
- */
- public function getEventLogger() {
- return $this->get(IEventLogger::class);
- }
-
- /**
- * Get the active query logger
- *
- * The returned logger only logs data when debug mode is enabled
- *
- * @return IQueryLogger
- * @deprecated 20.0.0
- */
- public function getQueryLogger() {
- return $this->get(IQueryLogger::class);
- }
-
- /**
* Get the manager for temporary files and folders
*
* @return \OCP\ITempManager
@@ -1931,66 +1596,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return \OC\OCSClient
- * @deprecated 20.0.0
- */
- public function getOcsClient() {
- return $this->get('OcsClient');
- }
-
- /**
- * @return IDateTimeZone
- * @deprecated 20.0.0
- */
- public function getDateTimeZone() {
- return $this->get(IDateTimeZone::class);
- }
-
- /**
- * @return IDateTimeFormatter
- * @deprecated 20.0.0
- */
- public function getDateTimeFormatter() {
- return $this->get(IDateTimeFormatter::class);
- }
-
- /**
- * @return IMountProviderCollection
- * @deprecated 20.0.0
- */
- public function getMountProviderCollection() {
- return $this->get(IMountProviderCollection::class);
- }
-
- /**
- * Get the IniWrapper
- *
- * @return IniGetWrapper
- * @deprecated 20.0.0
- */
- public function getIniWrapper() {
- return $this->get(IniGetWrapper::class);
- }
-
- /**
- * @return \OCP\Command\IBus
- * @deprecated 20.0.0
- */
- public function getCommandBus() {
- return $this->get(IBus::class);
- }
-
- /**
- * Get the trusted domain helper
- *
- * @return TrustedDomainHelper
- * @deprecated 20.0.0
- */
- public function getTrustedDomainHelper() {
- return $this->get(TrustedDomainHelper::class);
- }
-
- /**
* Get the locking provider
*
* @return ILockingProvider
@@ -2002,22 +1607,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return IMountManager
- * @deprecated 20.0.0
- **/
- public function getMountManager() {
- return $this->get(IMountManager::class);
- }
-
- /**
- * @return IUserMountCache
- * @deprecated 20.0.0
- */
- public function getUserMountCache() {
- return $this->get(IUserMountCache::class);
- }
-
- /**
* Get the MimeTypeDetector
*
* @return IMimeTypeDetector
@@ -2038,16 +1627,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Get the manager of all the capabilities
- *
- * @return CapabilitiesManager
- * @deprecated 20.0.0
- */
- public function getCapabilitiesManager() {
- return $this->get(CapabilitiesManager::class);
- }
-
- /**
* Get the Notification Manager
*
* @return \OCP\Notification\IManager
@@ -2059,14 +1638,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return ICommentsManager
- * @deprecated 20.0.0
- */
- public function getCommentsManager() {
- return $this->get(ICommentsManager::class);
- }
-
- /**
* @return \OCA\Theming\ThemingDefaults
* @deprecated 20.0.0
*/
@@ -2083,14 +1654,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return \OC\Session\CryptoWrapper
- * @deprecated 20.0.0
- */
- public function getSessionCryptoWrapper() {
- return $this->get('CryptoWrapper');
- }
-
- /**
* @return CsrfTokenManager
* @deprecated 20.0.0
*/
@@ -2099,22 +1662,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * @return IThrottler
- * @deprecated 20.0.0
- */
- public function getBruteForceThrottler() {
- return $this->get(Throttler::class);
- }
-
- /**
- * @return IContentSecurityPolicyManager
- * @deprecated 20.0.0
- */
- public function getContentSecurityPolicyManager() {
- return $this->get(ContentSecurityPolicyManager::class);
- }
-
- /**
* @return ContentSecurityPolicyNonceManager
* @deprecated 20.0.0
*/
@@ -2123,80 +1670,6 @@ class Server extends ServerContainer implements IServerContainer {
}
/**
- * Not a public API as of 8.2, wait for 9.0
- *
- * @return \OCA\Files_External\Service\BackendService
- * @deprecated 20.0.0
- */
- public function getStoragesBackendService() {
- return $this->get(BackendService::class);
- }
-
- /**
- * Not a public API as of 8.2, wait for 9.0
- *
- * @return \OCA\Files_External\Service\GlobalStoragesService
- * @deprecated 20.0.0
- */
- public function getGlobalStoragesService() {
- return $this->get(GlobalStoragesService::class);
- }
-
- /**
- * Not a public API as of 8.2, wait for 9.0
- *
- * @return \OCA\Files_External\Service\UserGlobalStoragesService
- * @deprecated 20.0.0
- */
- public function getUserGlobalStoragesService() {
- return $this->get(UserGlobalStoragesService::class);
- }
-
- /**
- * Not a public API as of 8.2, wait for 9.0
- *
- * @return \OCA\Files_External\Service\UserStoragesService
- * @deprecated 20.0.0
- */
- public function getUserStoragesService() {
- return $this->get(UserStoragesService::class);
- }
-
- /**
- * @return \OCP\Share\IManager
- * @deprecated 20.0.0
- */
- public function getShareManager() {
- return $this->get(\OCP\Share\IManager::class);
- }
-
- /**
- * @return \OCP\Collaboration\Collaborators\ISearch
- * @deprecated 20.0.0
- */
- public function getCollaboratorSearch() {
- return $this->get(\OCP\Collaboration\Collaborators\ISearch::class);
- }
-
- /**
- * @return \OCP\Collaboration\AutoComplete\IManager
- * @deprecated 20.0.0
- */
- public function getAutoCompleteManager() {
- return $this->get(IManager::class);
- }
-
- /**
- * Returns the LDAP Provider
- *
- * @return \OCP\LDAP\ILDAPProvider
- * @deprecated 20.0.0
- */
- public function getLDAPProvider() {
- return $this->get('LDAPProvider');
- }
-
- /**
* @return \OCP\Settings\IManager
* @deprecated 20.0.0
*/
@@ -2209,97 +1682,15 @@ class Server extends ServerContainer implements IServerContainer {
* @deprecated 20.0.0 Use get(\OCP\Files\AppData\IAppDataFactory::class)->get($app) instead
*/
public function getAppDataDir($app) {
- /** @var \OC\Files\AppData\Factory $factory */
$factory = $this->get(\OC\Files\AppData\Factory::class);
return $factory->get($app);
}
/**
- * @return \OCP\Lockdown\ILockdownManager
- * @deprecated 20.0.0
- */
- public function getLockdownManager() {
- return $this->get('LockdownManager');
- }
-
- /**
* @return \OCP\Federation\ICloudIdManager
* @deprecated 20.0.0
*/
public function getCloudIdManager() {
return $this->get(ICloudIdManager::class);
}
-
- /**
- * @return \OCP\GlobalScale\IConfig
- * @deprecated 20.0.0
- */
- public function getGlobalScaleConfig() {
- return $this->get(IConfig::class);
- }
-
- /**
- * @return \OCP\Federation\ICloudFederationProviderManager
- * @deprecated 20.0.0
- */
- public function getCloudFederationProviderManager() {
- return $this->get(ICloudFederationProviderManager::class);
- }
-
- /**
- * @return \OCP\Remote\Api\IApiFactory
- * @deprecated 20.0.0
- */
- public function getRemoteApiFactory() {
- return $this->get(IApiFactory::class);
- }
-
- /**
- * @return \OCP\Federation\ICloudFederationFactory
- * @deprecated 20.0.0
- */
- public function getCloudFederationFactory() {
- return $this->get(ICloudFederationFactory::class);
- }
-
- /**
- * @return \OCP\Remote\IInstanceFactory
- * @deprecated 20.0.0
- */
- public function getRemoteInstanceFactory() {
- return $this->get(IInstanceFactory::class);
- }
-
- /**
- * @return IStorageFactory
- * @deprecated 20.0.0
- */
- public function getStorageFactory() {
- return $this->get(IStorageFactory::class);
- }
-
- /**
- * Get the Preview GeneratorHelper
- *
- * @return GeneratorHelper
- * @since 17.0.0
- * @deprecated 20.0.0
- */
- public function getGeneratorHelper() {
- return $this->get(\OC\Preview\GeneratorHelper::class);
- }
-
- private function registerDeprecatedAlias(string $alias, string $target) {
- $this->registerService($alias, function (ContainerInterface $container) use ($target, $alias) {
- try {
- /** @var LoggerInterface $logger */
- $logger = $container->get(LoggerInterface::class);
- $logger->debug('The requested alias "' . $alias . '" is deprecated. Please request "' . $target . '" directly. This alias will be removed in a future Nextcloud version.', ['app' => 'serverDI']);
- } catch (ContainerExceptionInterface $e) {
- // Could not get logger. Continue
- }
-
- return $container->get($target);
- }, false);
- }
}