ILIAS  release_9 Revision v9.13-25-g2c18ec4c24f
ILIAS\FileDelivery\Setup\BaseDirObjective Class Reference
+ Inheritance diagram for ILIAS\FileDelivery\Setup\BaseDirObjective:
+ Collaboration diagram for ILIAS\FileDelivery\Setup\BaseDirObjective:

Public Member Functions

 getArtifactPath ()
 
 buildIn (Setup\Environment $env)
 
 build ()
 
 getPreconditions (Setup\Environment $environment)
 
- Public Member Functions inherited from ILIAS\Setup\Artifact\BuildArtifactObjective
 getArtifactPath ()
 Get the filename where the builder wants to put its artifact. More...
 
 build ()
 Build the artifact based. More...
 
 buildIn (Setup\Environment $env)
 Builds an artifact in some given Environment. More...
 
 getPreconditions (Setup\Environment $environment)
 Defaults to no preconditions. More...
 
 getHash ()
 Uses hashed Path. More...
 
 getLabel ()
 Defaults to "Build $this->getArtifactPath()". More...
 
 isNotable ()
 Defaults to 'true'. More...
 
 achieve (Setup\Environment $environment)
 Builds the artifact and puts it in its location. More...
 
 isApplicable (Setup\Environment $environment)
 
- Public Member Functions inherited from ILIAS\Setup\Objective
 getPreconditions (Environment $environment)
 Objectives might depend on other objectives. More...
 
 achieve (Environment $environment)
 Objectives can be achieved. More...
 
 isApplicable (Environment $environment)
 Get to know whether the objective is applicable. More...
 

Static Public Member Functions

static get ()
 

Data Fields

const BASE_DIR = './src/FileDelivery/artifacts/base_dir.php'
 

Protected Attributes

array $data = []
 

Additional Inherited Members

- Protected Member Functions inherited from ILIAS\Setup\Artifact\BuildArtifactObjective
 makeDirectoryFor (string $path)
 

Detailed Description

Author
Fabian Schmid fabia.nosp@m.n@sr.nosp@m..solu.nosp@m.tion.nosp@m.s

Definition at line 29 of file BaseDirObjective.php.

Member Function Documentation

◆ build()

ILIAS\FileDelivery\Setup\BaseDirObjective::build ( )

Definition at line 53 of file BaseDirObjective.php.

Referenced by ILIAS\FileDelivery\Setup\BaseDirObjective\buildIn().

53  : Setup\Artifact
54  {
55  return new Setup\Artifact\ArrayArtifact($this->data);
56  }
+ Here is the caller graph for this function:

◆ buildIn()

ILIAS\FileDelivery\Setup\BaseDirObjective::buildIn ( Setup\Environment  $env)

Definition at line 40 of file BaseDirObjective.php.

References ILIAS\$client_id, ILIAS\FileDelivery\Setup\BaseDirObjective\build(), and ILIAS\Setup\Environment\RESOURCE_ILIAS_INI.

40  : Setup\Artifact
41  {
42  $ilias_ini = $env->getResource(Setup\Environment::RESOURCE_ILIAS_INI);
43  if ($ilias_ini instanceof \ilIniFile) {
44  $base_dir = $ilias_ini->readVariable('clients', 'datadir');
45  $client_id = $ilias_ini->readVariable('clients', 'default');
46  if (!empty($base_dir) && !empty($client_id)) {
47  $this->data['base_dir'] = rtrim(rtrim($base_dir, '/') . '/' . $client_id, '/') . '/';
48  }
49  }
50  return $this->build();
51  }
string $client_id
Definition: class.ilias.php:22
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
+ Here is the call graph for this function:

◆ get()

static ILIAS\FileDelivery\Setup\BaseDirObjective::get ( )
static

Definition at line 65 of file BaseDirObjective.php.

Referenced by ILIAS\FileDelivery\Token\Signer\Payload\ShortFilePayload\__construct(), and ILIAS\FileDelivery\Token\Signer\Payload\ShortFilePayload\getUri().

65  : ?string
66  {
67  static $base;
68 
69  if (isset($base)) {
70  return $base;
71  }
72 
73  if (is_readable(self::BASE_DIR)) {
74  $data = require self::BASE_DIR;
75  }
76 
77  return $base = $data['base_dir'] ?? null;
78  }
+ Here is the caller graph for this function:

◆ getArtifactPath()

ILIAS\FileDelivery\Setup\BaseDirObjective::getArtifactPath ( )

Definition at line 35 of file BaseDirObjective.php.

35  : string
36  {
37  return self::BASE_DIR;
38  }

◆ getPreconditions()

ILIAS\FileDelivery\Setup\BaseDirObjective::getPreconditions ( Setup\Environment  $environment)

Definition at line 58 of file BaseDirObjective.php.

58  : array
59  {
60  return [
61  new \ilIniFilesLoadedObjective(),
62  ];
63  }

Field Documentation

◆ $data

array ILIAS\FileDelivery\Setup\BaseDirObjective::$data = []
protected

Definition at line 33 of file BaseDirObjective.php.

◆ BASE_DIR

const ILIAS\FileDelivery\Setup\BaseDirObjective::BASE_DIR = './src/FileDelivery/artifacts/base_dir.php'

Definition at line 31 of file BaseDirObjective.php.


The documentation for this class was generated from the following file: