Add a deprecated alias registration to find deprecated usages

Fixes #19345

Basically just a stupid wrapper with extra logging. So that we can at
least inform people they are using the wrong methods.

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
Roeland Jago Douma 2020-02-07 11:37:04 +01:00
parent 0ffa598136
commit 20f4a8c046
No known key found for this signature in database
GPG Key ID: F941078878347C0C
1 changed files with 17 additions and 0 deletions

View File

@ -134,6 +134,7 @@ use OCA\Theming\ThemingDefaults;
use OCA\Theming\Util;
use OCP\Accounts\IAccountManager;
use OCP\App\IAppManager;
use OCP\AppFramework\QueryException;
use OCP\Authentication\LoginCredentials\IStore;
use OCP\Collaboration\AutoComplete\IManager;
use OCP\Contacts\ContactsMenu\IActionFactory;
@ -158,9 +159,11 @@ use OCP\Group\Events\UserAddedEvent;
use OCP\Group\Events\UserRemovedEvent;
use OCP\Group\ISubAdmin;
use OCP\ICacheFactory;
use OCP\IContainer;
use OCP\IDBConnection;
use OCP\IInitialStateService;
use OCP\IL10N;
use OCP\ILogger;
use OCP\IServerContainer;
use OCP\ITempManager;
use OCP\IUser;
@ -2179,4 +2182,18 @@ class Server extends ServerContainer implements IServerContainer {
public function getGeneratorHelper() {
return $this->query(\OC\Preview\GeneratorHelper::class);
}
private function registerDeprecatedAlias(string $alias, string $target) {
$this->registerService($alias, function (IContainer $container) use ($target, $alias) {
try {
/** @var ILogger $logger */
$logger = $container->query(ILogger::class);
$logger->debug('The requested alias "' . $alias . '" is depreacted. Please request "' . $target . '" directly. This alias will be removed in a future Nextcloud version.', ['app' => 'serverDI']);
} catch (QueryException $e) {
// Could not get logger. Continue
}
return $container->query($target);
}, false);
}
}