ILIAS  trunk Revision v13.0_alpha-62-g3b72d83f2e5
ResponseBuilderFactory.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
24
36{
41 public static function fromArtefact(?string $path = null): ResponseBuilder
42 {
44 if (!is_file($path)) {
45 return new PHPResponseBuilder();
46 }
47
48 $settings = @include $path;
49
50 return self::fromArray(is_array($settings) ? $settings : []);
51 }
52
56 public static function fromArray(array $settings): ResponseBuilder
57 {
58 return match ($settings[DeliveryMethodObjective::SETTINGS] ?? null) {
61 default => new PHPResponseBuilder(),
62 };
63 }
64
73 private static function xAccel(array $settings): ResponseBuilder
74 {
76
77 if (!is_string($external_data_dir) || $external_data_dir === '') {
78 return new PHPResponseBuilder();
79 }
80
81 return new XAccelResponseBuilder($external_data_dir);
82 }
83}
$settings
Definition: index.php:44
Builds the ResponseBuilder an installation is set up for.
static xAccel(array $settings)
X-Accel needs the external data directory the web server maps its internal location to.