ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
class.ilSetupMetricsCollectedObjective.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
21use ILIAS\Setup;
22
24{
25 public function getLabel(): string
26 {
27 return "Collect common metrics for the ILIAS installation.";
28 }
29
30 protected function getTentativePreconditions(Setup\Environment $environment): array
31 {
32 return [
34 new \ilSettingsFactoryExistsObjective()
35 ];
36 }
37
38 protected function collectFrom(Setup\Environment $environment, Setup\Metrics\Storage $storage): void
39 {
40 $ini = $environment->getResource(Setup\Environment::RESOURCE_ILIAS_INI);
41 $client_ini = $environment->getResource(Setup\Environment::RESOURCE_CLIENT_INI);
42 $storage->storeStableBool(
43 "is_installed",
44 $ini !== null && $client_ini !== null,
45 "Are there any indications an installation was performed?"
46 );
47 $client_id = $environment->getResource(Setup\Environment::RESOURCE_CLIENT_ID);
48 if ($client_id) {
49 $storage->storeConfigText(
50 "client_id",
52 "Id of the ILIAS client."
53 );
54 }
55 $settings_factory = $environment->getResource(Setup\Environment::RESOURCE_SETTINGS_FACTORY);
56 if ($settings_factory) {
57 $common_settings = $settings_factory->settingsFor("common");
58 $nic_enabled = $common_settings->get("nic_enabled") == "1";
59 $storage->storeStableBool(
60 "nic_enabled",
61 $nic_enabled,
62 "Is the installation registered at the ILIAS NIC server?"
63 );
64 if ($nic_enabled) {
65 $storage->storeConfigText(
66 "inst_id",
67 $common_settings->get("inst_id"),
68 "The id of the installation as provided by the ILIAS NIC server."
69 );
70 }
71 }
72 }
73}
collectFrom(Setup\Environment $environment, Setup\Metrics\Storage $storage)
getTentativePreconditions(Setup\Environment $environment)
An environment holds resources to be used in the setup process.
Definition: Environment.php:28
Storage is simple key/value store without further schema definition.
Definition: Storage.php:30
$client_id
Definition: ltiauth.php:67
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
$ini
Definition: raiseError.php:20