Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions lib/BackgroundJob/ExAppInitStatusCheckJob.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\BackgroundJob\TimedJob;
use OCP\DB\Exception;
use OCP\IConfig;
use OCP\IAppConfig;

class ExAppInitStatusCheckJob extends TimedJob {
private const everyMinuteInterval = 60;
Expand All @@ -24,7 +24,7 @@ public function __construct(
ITimeFactory $time,
private readonly ExAppMapper $mapper,
private readonly AppAPIService $service,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
) {
parent::__construct($time);

Expand All @@ -36,7 +36,7 @@ protected function run($argument): void {
// set status.progress=0 and status.error message with timeout error
try {
$exApps = $this->mapper->findAll();
$initTimeoutMinutesSetting = intval($this->config->getAppValue(Application::APP_ID, 'init_timeout', '40'));
$initTimeoutMinutesSetting = intval($this->appConfig->getValueString(Application::APP_ID, 'init_timeout', '40', lazy: true));
foreach ($exApps as $exApp) {
$status = $exApp->getStatus();
if (isset($status['init']) && $status['init'] !== 100) {
Expand Down
8 changes: 4 additions & 4 deletions lib/Command/Daemon/ListDaemons.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
use OCA\AppAPI\AppInfo\Application;
use OCA\AppAPI\Service\DaemonConfigService;

use OCP\IConfig;
use OCP\IAppConfig;
use Symfony\Component\Console\Command\Command;
use Symfony\Component\Console\Helper\Table;
use Symfony\Component\Console\Input\InputInterface;
Expand All @@ -21,8 +21,8 @@
class ListDaemons extends Command {

public function __construct(
private DaemonConfigService $daemonConfigService,
private IConfig $config
private readonly DaemonConfigService $daemonConfigService,
private readonly IAppConfig $appConfig
) {
parent::__construct();
}
Expand All @@ -39,7 +39,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int
return 0;
}

$defaultDaemonName = $this->config->getAppValue(Application::APP_ID, 'default_daemon_config');
$defaultDaemonName = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true);

$output->writeln('Registered ExApp daemon configs:');
$table = new Table($output);
Expand Down
6 changes: 3 additions & 3 deletions lib/Command/ExApp/Register.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
use OCA\AppAPI\Service\DaemonConfigService;
use OCA\AppAPI\Service\ExAppService;

use OCP\IConfig;
use OCP\IAppConfig;
use OCP\Security\ISecureRandom;
use Psr\Log\LoggerInterface;
use Symfony\Component\Console\Command\Command;
Expand All @@ -33,7 +33,7 @@ public function __construct(
private readonly DaemonConfigService $daemonConfigService,
private readonly DockerActions $dockerActions,
private readonly ManualActions $manualActions,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly ExAppService $exAppService,
private readonly ISecureRandom $random,
private readonly LoggerInterface $logger,
Expand Down Expand Up @@ -118,7 +118,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int

$daemonConfigName = $input->getArgument('daemon-config-name');
if (!isset($daemonConfigName) || $daemonConfigName === '') {
$daemonConfigName = $this->config->getAppValue(Application::APP_ID, 'default_daemon_config');
$daemonConfigName = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true);
}
$daemonConfig = $this->daemonConfigService->getDaemonConfigByName($daemonConfigName);
if ($daemonConfig === null) {
Expand Down
10 changes: 5 additions & 5 deletions lib/Controller/ConfigController.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,23 +14,23 @@
use OCP\AppFramework\Controller;
use OCP\AppFramework\Http\Attribute\NoCSRFRequired;
use OCP\AppFramework\Http\DataResponse;
use OCP\IConfig;
use OCP\IAppConfig;
use OCP\IRequest;

class ConfigController extends Controller {

public function __construct(
string $appName,
IRequest $request,
private IConfig $config,
string $appName,
IRequest $request,
private readonly IAppConfig $appConfig,
) {
parent::__construct($appName, $request);
}

#[NoCSRFRequired]
public function setAdminConfig(array $values): DataResponse {
foreach ($values as $key => $value) {
$this->config->setAppValue(Application::APP_ID, $key, $value);
$this->appConfig->setValueString(Application::APP_ID, $key, $value, lazy: true);
}
return new DataResponse(1);
}
Expand Down
12 changes: 6 additions & 6 deletions lib/Controller/DaemonConfigController.php
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired;
use OCP\AppFramework\Http\JSONResponse;
use OCP\AppFramework\Http\Response;
use OCP\IConfig;
use OCP\IAppConfig;
use OCP\IL10N;
use OCP\IRequest;
use OCP\Security\ICrypto;
Expand All @@ -33,7 +33,7 @@ class DaemonConfigController extends ApiController {

public function __construct(
IRequest $request,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly DaemonConfigService $daemonConfigService,
private readonly DockerActions $dockerActions,
private readonly AppAPIService $service,
Expand All @@ -47,15 +47,15 @@ public function __construct(
public function getAllDaemonConfigs(): Response {
return new JSONResponse([
'daemons' => $this->daemonConfigService->getDaemonConfigsWithAppsCount(),
'default_daemon_config' => $this->config->getAppValue(Application::APP_ID, 'default_daemon_config'),
'default_daemon_config' => $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true),
]);
}

#[PasswordConfirmationRequired]
public function registerDaemonConfig(array $daemonConfigParams, bool $defaultDaemon = false): Response {
$daemonConfig = $this->daemonConfigService->registerDaemonConfig($daemonConfigParams);
if ($daemonConfig !== null && $defaultDaemon) {
$this->config->setAppValue(Application::APP_ID, 'default_daemon_config', $daemonConfig->getName());
$this->appConfig->setValueString(Application::APP_ID, 'default_daemon_config', $daemonConfig->getName(), lazy: true);
}
return new JSONResponse([
'success' => $daemonConfig !== null,
Expand Down Expand Up @@ -107,10 +107,10 @@ public function updateDaemonConfig(string $name, array $daemonConfigParams): Res
#[PasswordConfirmationRequired]
public function unregisterDaemonConfig(string $name): Response {
$daemonConfig = $this->daemonConfigService->getDaemonConfigByName($name);
$defaultDaemonConfig = $this->config->getAppValue(Application::APP_ID, 'default_daemon_config', '');
$defaultDaemonConfig = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', '', lazy: true);
$this->service->removeExAppsByDaemonConfigName($daemonConfig);
if ($daemonConfig->getName() === $defaultDaemonConfig) {
$this->config->deleteAppValue(Application::APP_ID, 'default_daemon_config');
$this->appConfig->deleteKey(Application::APP_ID, 'default_daemon_config');
}
$daemonConfig = $this->daemonConfigService->unregisterDaemonConfig($daemonConfig);
return new JSONResponse([
Expand Down
8 changes: 4 additions & 4 deletions lib/DeployActions/AIODockerActions.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
use OCA\AppAPI\AppInfo\Application;
use OCA\AppAPI\Db\DaemonConfig;
use OCA\AppAPI\Service\DaemonConfigService;
use OCP\IConfig;
use OCP\IAppConfig;

/**
* Class with utils methods for AIO setup
Expand All @@ -22,7 +22,7 @@ class AIODockerActions {
public const AIO_DOCKER_SOCKET_PROXY_HOST = 'nextcloud-aio-docker-socket-proxy:2375';

public function __construct(
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly DaemonConfigService $daemonConfigService
) {
}
Expand All @@ -38,7 +38,7 @@ public function isAIO(): bool {
* Registers DaemonConfig with default params to use AIO Docker Socket Proxy
*/
public function registerAIODaemonConfig(): ?DaemonConfig {
$defaultDaemonConfig = $this->config->getAppValue(Application::APP_ID, 'default_daemon_config');
$defaultDaemonConfig = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true);
if ($defaultDaemonConfig !== '') {
$daemonConfig = $this->daemonConfigService->getDaemonConfigByName(self::AIO_DAEMON_CONFIG_NAME);
if ($daemonConfig !== null) {
Expand Down Expand Up @@ -67,7 +67,7 @@ public function registerAIODaemonConfig(): ?DaemonConfig {

$daemonConfig = $this->daemonConfigService->registerDaemonConfig($daemonConfigParams);
if ($daemonConfig !== null) {
$this->config->setAppValue(Application::APP_ID, 'default_daemon_config', $daemonConfig->getName());
$this->appConfig->setValueString(Application::APP_ID, 'default_daemon_config', $daemonConfig->getName(), lazy: true);
}
return $daemonConfig;
}
Expand Down
6 changes: 4 additions & 2 deletions lib/DeployActions/DockerActions.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
use OCA\AppAPI\Service\HarpService;
use OCP\App\IAppManager;

use OCP\IAppConfig;
use OCP\ICertificateManager;
use OCP\IConfig;
use OCP\ITempManager;
Expand All @@ -43,7 +44,8 @@ class DockerActions implements IDeployActions {

public function __construct(
private readonly LoggerInterface $logger,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly IConfig $config,
private readonly ICertificateManager $certificateManager,
private readonly IAppManager $appManager,
private readonly IURLGenerator $urlGenerator,
Expand Down Expand Up @@ -334,7 +336,7 @@ public function createContainer(string $dockerUrl, string $imageId, DaemonConfig
'NetworkMode' => $params['net'],
'Mounts' => $this->buildDefaultExAppVolume($params['hostname']),
'RestartPolicy' => [
'Name' => $this->config->getAppValue(Application::APP_ID, 'container_restart_policy', 'unless-stopped'),
'Name' => $this->appConfig->getValueString(Application::APP_ID, 'container_restart_policy', 'unless-stopped', lazy: true),
],
],
'Env' => $params['env'],
Expand Down
6 changes: 3 additions & 3 deletions lib/Service/ExAppsPageService.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
use OCA\AppAPI\Fetcher\ExAppFetcher;
use OCP\App\IAppManager;
use OCP\AppFramework\Services\IInitialState;
use OCP\IConfig;
use OCP\IAppConfig;
use OCP\IURLGenerator;
use Psr\Log\LoggerInterface;

Expand All @@ -23,7 +23,7 @@ public function __construct(
private readonly ExAppFetcher $exAppFetcher,
private readonly DaemonConfigService $daemonConfigService,
private readonly DockerActions $dockerActions,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly IAppManager $appManager,
private readonly LoggerInterface $logger,
private readonly IURLGenerator $urlGenerator,
Expand All @@ -44,7 +44,7 @@ public function provideAppApiState(IInitialState $initialState): void {
if ($appApiEnabled) {
$initialState->provideInitialState('appstoreExAppUpdateCount', count($this->exAppFetcher->getExAppsWithUpdates()));

$defaultDaemonConfigName = $this->config->getAppValue('app_api', 'default_daemon_config');
$defaultDaemonConfigName = $this->appConfig->getValueString('app_api', 'default_daemon_config', lazy: true);
if ($defaultDaemonConfigName !== '') {
$daemonConfig = $this->daemonConfigService->getDaemonConfigByName($defaultDaemonConfigName);
if ($daemonConfig !== null) {
Expand Down
12 changes: 6 additions & 6 deletions lib/Settings/Admin.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
use OCA\AppAPI\Service\DaemonConfigService;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\AppFramework\Services\IInitialState;
use OCP\IConfig;
use OCP\IAppConfig;
use OCP\Settings\ISettings;
use Psr\Log\LoggerInterface;

Expand All @@ -24,7 +24,7 @@ class Admin implements ISettings {
public function __construct(
private readonly IInitialState $initialStateService,
private readonly DaemonConfigService $daemonConfigService,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly DockerActions $dockerActions,
private readonly LoggerInterface $logger,
) {
Expand All @@ -33,12 +33,12 @@ public function __construct(
public function getForm(): TemplateResponse {
$adminInitialData = [
'daemons' => $this->daemonConfigService->getDaemonConfigsWithAppsCount(),
'default_daemon_config' => $this->config->getAppValue(Application::APP_ID, 'default_daemon_config'),
'init_timeout' => $this->config->getAppValue(Application::APP_ID, 'init_timeout', '40'),
'container_restart_policy' => $this->config->getAppValue(Application::APP_ID, 'container_restart_policy', 'unless-stopped'),
'default_daemon_config' => $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true),
'init_timeout' => $this->appConfig->getValueString(Application::APP_ID, 'init_timeout', '40'),
'container_restart_policy' => $this->appConfig->getValueString(Application::APP_ID, 'container_restart_policy', 'unless-stopped'),
];

$defaultDaemonConfigName = $this->config->getAppValue(Application::APP_ID, 'default_daemon_config');
$defaultDaemonConfigName = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true);
if ($defaultDaemonConfigName !== '') {
$daemonConfig = $this->daemonConfigService->getDaemonConfigByName($defaultDaemonConfigName);
if ($daemonConfig !== null) {
Expand Down
14 changes: 7 additions & 7 deletions lib/SetupChecks/DaemonCheck.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,12 +22,12 @@

class DaemonCheck implements ISetupCheck {
public function __construct(
private IL10N $l10n,
private IConfig $config,
private IAppConfig $appConfig,
private DockerActions $dockerActions,
private LoggerInterface $logger,
private DaemonConfigService $daemonConfigService,
private readonly IL10N $l10n,
private readonly IConfig $config,
private readonly IAppConfig $appConfig,
private readonly DockerActions $dockerActions,
private readonly LoggerInterface $logger,
private readonly DaemonConfigService $daemonConfigService,
) {
}

Expand All @@ -40,7 +40,7 @@ public function getCategory(): string {
}

public function getDefaultDaemonConfig(): ?DaemonConfig {
$defaultDaemonConfigName = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config');
$defaultDaemonConfigName = $this->appConfig->getValueString(Application::APP_ID, 'default_daemon_config', lazy: true);
if ($defaultDaemonConfigName === '') {
return null;
}
Expand Down