Register in ServerContainer

Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
This commit is contained in:
Lukas Reschke 2017-04-12 21:27:40 +02:00
parent 66835476b5
commit d729bde98c
No known key found for this signature in database
GPG Key ID: B9F6980CF6E759B1
2 changed files with 15 additions and 18 deletions

View File

@ -53,13 +53,11 @@ use OCP\AppFramework\QueryException;
use OCP\Files\Folder; use OCP\Files\Folder;
use OCP\Files\IAppData; use OCP\Files\IAppData;
use OCP\IL10N; use OCP\IL10N;
use OCP\IMemcache;
use OCP\IRequest; use OCP\IRequest;
use OCP\IServerContainer; use OCP\IServerContainer;
use OCP\IUserSession; use OCP\IUserSession;
use OCP\RichObjectStrings\IValidator; use OCP\RichObjectStrings\IValidator;
use OCP\Util; use OCP\Util;
use SearchDAV\XML\Limit;
class DIContainer extends SimpleContainer implements IAppContainer { class DIContainer extends SimpleContainer implements IAppContainer {
@ -164,22 +162,6 @@ class DIContainer extends SimpleContainer implements IAppContainer {
return $c->query(Validator::class); return $c->query(Validator::class);
}); });
$this->registerService(OC\Security\RateLimiting\Limiter::class, function($c) {
return new OC\Security\RateLimiting\Limiter(
$this->getServer()->getUserSession(),
$this->getServer()->getRequest(),
new OC\AppFramework\Utility\TimeFactory(),
$c->query(OC\Security\RateLimiting\Backend\IBackend::class)
);
});
$this->registerService(OC\Security\RateLimiting\Backend\IBackend::class, function($c) {
return new OC\Security\RateLimiting\Backend\MemoryCache(
$this->getServer()->getMemCacheFactory(),
new OC\AppFramework\Utility\TimeFactory()
);
});
$this->registerService(\OC\Security\IdentityProof\Manager::class, function ($c) { $this->registerService(\OC\Security\IdentityProof\Manager::class, function ($c) {
return new \OC\Security\IdentityProof\Manager( return new \OC\Security\IdentityProof\Manager(
$this->getServer()->getAppDataDir('identityproof'), $this->getServer()->getAppDataDir('identityproof'),

View File

@ -516,6 +516,21 @@ class Server extends ServerContainer implements IServerContainer {
}); });
$this->registerAlias('Search', \OCP\ISearch::class); $this->registerAlias('Search', \OCP\ISearch::class);
$this->registerService(\OC\Security\RateLimiting\Limiter::class, function($c) {
return new \OC\Security\RateLimiting\Limiter(
$this->getUserSession(),
$this->getRequest(),
new \OC\AppFramework\Utility\TimeFactory(),
$c->query(\OC\Security\RateLimiting\Backend\IBackend::class)
);
});
$this->registerService(\OC\Security\RateLimiting\Backend\IBackend::class, function($c) {
return new \OC\Security\RateLimiting\Backend\MemoryCache(
$this->getMemCacheFactory(),
new \OC\AppFramework\Utility\TimeFactory()
);
});
$this->registerService(\OCP\Security\ISecureRandom::class, function ($c) { $this->registerService(\OCP\Security\ISecureRandom::class, function ($c) {
return new SecureRandom(); return new SecureRandom();
}); });