f7cloud_client/apps/serverinfo/lib/Resources/CPU.php
root 8b6a0139db f7cloud_client
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-17 22:59:26 +00:00

49 lines
918 B
PHP

<?php
declare(strict_types=1);
/**
* SPDX-FileCopyrightText: 2025 F7cloud GmbH and F7cloud contributors
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
namespace OCA\ServerInfo\Resources;
/**
* @psalm-api
*/
class CPU implements \JsonSerializable {
public function __construct(
private string $name,
private int $threads,
) {
}
public function getName(): string {
return $this->name;
}
public function getThreads(): int {
return $this->threads;
}
/**
* Retrieves the system load averages.
*
* @return array|false Returns an array containing the system load averages for the last 1, 5, and 15 minutes.
*/
public function getAverageLoad(): array|false {
if (function_exists('sys_getloadavg')) {
return sys_getloadavg();
}
return false;
}
#[\Override]
public function jsonSerialize(): array {
return [
'name' => $this->name,
'threads' => $this->threads,
];
}
}