Use automatic DI injection for UpdateLookupServer

Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
Joas Schilling 2017-05-10 09:44:02 +02:00
parent d418ea550b
commit a8bb4a1898
No known key found for this signature in database
GPG Key ID: E166FD8976B3BAC8
2 changed files with 9 additions and 29 deletions

View File

@ -22,30 +22,10 @@
$dispatcher = \OC::$server->getEventDispatcher();
$dispatcher->addListener('OC\AccountManager::userUpdated', function(\Symfony\Component\EventDispatcher\GenericEvent $event) {
/** @var \OCP\IUser $user */
$user = $event->getSubject();
$keyManager = new \OC\Security\IdentityProof\Manager(
\OC::$server->getAppDataDir('identityproof'),
\OC::$server->getCrypto()
);
$config = \OC::$server->getConfig();
$lookupServer = $config->getSystemValue('lookup_server', '');
$updateLookupServer = new \OCA\LookupServerConnector\UpdateLookupServer(
new \OC\Accounts\AccountManager(
\OC::$server->getDatabaseConnection(),
\OC::$server->getEventDispatcher(),
\OC::$server->getJobList()
),
\OC::$server->getHTTPClientService(),
new \OC\Security\IdentityProof\Signer(
$keyManager,
new \OC\AppFramework\Utility\TimeFactory(),
\OC::$server->getUserManager()
),
\OC::$server->getJobList(),
$lookupServer
);
/** @var \OCA\LookupServerConnector\UpdateLookupServer $updateLookupServer */
$updateLookupServer = \OC::$server->query(\OCA\LookupServerConnector\UpdateLookupServer::class);
$updateLookupServer->userUpdated($user);
});

View File

@ -27,6 +27,7 @@ use OC\Security\IdentityProof\Signer;
use OCA\LookupServerConnector\BackgroundJobs\RetryJob;
use OCP\BackgroundJob\IJobList;
use OCP\Http\Client\IClientService;
use OCP\IConfig;
use OCP\IUser;
/**
@ -44,27 +45,26 @@ class UpdateLookupServer {
/** @var IJobList */
private $jobList;
/** @var string URL point to lookup server */
private $lookupServer = 'https://lookup.nextcloud.com';
private $lookupServer;
/**
* @param AccountManager $accountManager
* @param IClientService $clientService
* @param Signer $signer
* @param IJobList $jobList
* @param string $lookupServer if nothing is given we use the default lookup server
* @param IConfig $config
*/
public function __construct(AccountManager $accountManager,
IClientService $clientService,
Signer $signer,
IJobList $jobList,
$lookupServer = '') {
IConfig $config) {
$this->accountManager = $accountManager;
$this->clientService = $clientService;
$this->signer = $signer;
$this->jobList = $jobList;
if ($lookupServer !== '') {
$this->lookupServer = $lookupServer;
}
$this->lookupServer = $config->getSystemValue('lookup_server', 'https://lookup.nextcloud.com');
$this->lookupServer = rtrim($this->lookupServer, '/');
$this->lookupServer .= '/users';
}