From 6025651988914b06e9815c2ecbb0f398bae1e11a Mon Sep 17 00:00:00 2001 From: Ivan Sein Date: Mon, 19 Sep 2016 17:35:39 +0200 Subject: Only update values which change frequently. --- lib/Controller/PageController.php | 44 ++--------------------------------- lib/Settings/AdminSettings.php | 48 +++++++++++++++++++++++++++++++++++++-- 2 files changed, 48 insertions(+), 44 deletions(-) (limited to 'lib') diff --git a/lib/Controller/PageController.php b/lib/Controller/PageController.php index 336ddf6..e5455df 100644 --- a/lib/Controller/PageController.php +++ b/lib/Controller/PageController.php @@ -26,11 +26,6 @@ use OCP\IRequest; use OCP\AppFramework\Http\TemplateResponse; use OCP\AppFramework\Http\DataResponse; use OCP\AppFramework\Controller; -use OCA\ServerInfo\DatabaseStatistics; -use OCA\ServerInfo\PhpStatistics; -use OCA\ServerInfo\SessionStatistics; -use OCA\ServerInfo\ShareStatistics; -use OCA\ServerInfo\StorageStatistics; use OCA\ServerInfo\SystemStatistics; use OCP\IURLGenerator; @@ -39,50 +34,20 @@ class PageController extends Controller { /** @var SystemStatistics */ private $systemStatistics; - /** @var StorageStatistics */ - private $storageStatistics; - - /** @var PhpStatistics */ - private $phpStatistics; - - /** @var DatabaseStatistics */ - private $databaseStatistics; - - /** @var ShareStatistics */ - private $shareStatistics; - - /** @var SessionStatistics */ - private $sessionStatistics; - /** * ApiController constructor. * * @param string $appName * @param IRequest $request * @param SystemStatistics $systemStatistics - * @param StorageStatistics $storageStatistics - * @param PhpStatistics $phpStatistics - * @param DatabaseStatistics $databaseStatistics - * @param ShareStatistics $shareStatistics - * @param SessionStatistics $sessionStatistics */ public function __construct($appName, IRequest $request, - SystemStatistics $systemStatistics, - StorageStatistics $storageStatistics, - PhpStatistics $phpStatistics, - DatabaseStatistics $databaseStatistics, - ShareStatistics $shareStatistics, - SessionStatistics $sessionStatistics + SystemStatistics $systemStatistics ) { parent::__construct($appName, $request); $this->systemStatistics = $systemStatistics; - $this->storageStatistics = $storageStatistics; - $this->phpStatistics = $phpStatistics; - $this->databaseStatistics = $databaseStatistics; - $this->shareStatistics = $shareStatistics; - $this->sessionStatistics = $sessionStatistics; } /** @@ -93,12 +58,7 @@ class PageController extends Controller { public function update() { $data = [ - 'system' => $this->systemStatistics->getSystemStatistics(), - 'storage' => $this->storageStatistics->getStorageStatistics(), - 'shares' => $this->shareStatistics->getShareStatistics(), - 'php' => $this->phpStatistics->getPhpStatistics(), - 'database' => $this->databaseStatistics->getDatabaseStatistics(), - 'activeUsers' => $this->sessionStatistics->getSessionStatistics() + 'system' => $this->systemStatistics->getSystemStatistics() ]; return new JSONResponse($data); diff --git a/lib/Settings/AdminSettings.php b/lib/Settings/AdminSettings.php index 3a774a6..110a777 100644 --- a/lib/Settings/AdminSettings.php +++ b/lib/Settings/AdminSettings.php @@ -27,6 +27,11 @@ use OCP\AppFramework\Http\TemplateResponse; use OCP\IL10N; use OCP\IURLGenerator; use OCP\Settings\ISettings; +use OCA\ServerInfo\DatabaseStatistics; +use OCA\ServerInfo\PhpStatistics; +use OCA\ServerInfo\SessionStatistics; +use OCA\ServerInfo\ShareStatistics; +use OCA\ServerInfo\StorageStatistics; class AdminSettings implements ISettings { @@ -37,15 +42,47 @@ class AdminSettings implements ISettings { /** @var IURLGenerator */ private $urlGenerator; + /** @var StorageStatistics */ + private $storageStatistics; + + /** @var PhpStatistics */ + private $phpStatistics; + + /** @var DatabaseStatistics */ + private $databaseStatistics; + + /** @var ShareStatistics */ + private $shareStatistics; + + /** @var SessionStatistics */ + private $sessionStatistics; + /** * Admin constructor. * * @param IL10N $l * @param IURLGenerator $urlGenerator + * @param StorageStatistics $storageStatistics + * @param PhpStatistics $phpStatistics + * @param DatabaseStatistics $databaseStatistics + * @param ShareStatistics $shareStatistics + * @param SessionStatistics $sessionStatistics */ - public function __construct(IL10N $l, IURLGenerator $urlGenerator) { + public function __construct(IL10N $l, + IURLGenerator $urlGenerator, + StorageStatistics $storageStatistics, + PhpStatistics $phpStatistics, + DatabaseStatistics $databaseStatistics, + ShareStatistics $shareStatistics, + SessionStatistics $sessionStatistics + ) { $this->l = $l; $this->urlGenerator = $urlGenerator; + $this->storageStatistics = $storageStatistics; + $this->phpStatistics = $phpStatistics; + $this->databaseStatistics = $databaseStatistics; + $this->shareStatistics = $shareStatistics; + $this->sessionStatistics = $sessionStatistics; } /** @@ -53,7 +90,14 @@ class AdminSettings implements ISettings { */ public function getForm() { $monitoringEndPoint = $this->urlGenerator->getAbsoluteURL('ocs/v2.php/apps/serverinfo/api/v1/info'); - $params = ['ocs' => $monitoringEndPoint]; + $params = [ + 'ocs' => $monitoringEndPoint, + 'storage' => $this->storageStatistics->getStorageStatistics(), + 'shares' => $this->shareStatistics->getShareStatistics(), + 'php' => $this->phpStatistics->getPhpStatistics(), + 'database' => $this->databaseStatistics->getDatabaseStatistics(), + 'activeUsers' => $this->sessionStatistics->getSessionStatistics() + ]; return new TemplateResponse('serverinfo', 'settings-admin', $params); } -- cgit v1.2.3