ILIAS
release_9 Revision v9.13-25-g2c18ec4c24f
◀ ilDoc Overview
AbstractMachine.php
Go to the documentation of this file.
1
<?php
18
declare(strict_types=1);
19
20
namespace
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines
;
21
22
use
ILIAS\ResourceStorage\Flavour\Engine\Engine
;
23
use
ILIAS\ResourceStorage\Flavour\Machine\FlavourMachine
;
24
29
abstract
class
AbstractMachine
implements
FlavourMachine
30
{
31
protected
?
Engine
$engine
= null;
32
33
public
function
__construct
()
34
{
35
}
36
37
public
function
withEngine
(
Engine
$engine):
FlavourMachine
38
{
39
$clone = clone $this;
40
$clone->engine =
$engine
;
41
return
$clone;
42
}
43
44
public
function
getEngine
():
Engine
45
{
46
if
($this->engine === null) {
47
throw
new \OutOfBoundsException(
"Engine not available"
);
48
}
49
return
$this->engine
;
50
}
51
}
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\AbstractMachine\withEngine
withEngine(Engine $engine)
The demanded Engine will be passed here.
Definition:
AbstractMachine.php:37
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\AbstractMachine
Definition:
AbstractMachine.php:29
FlavourMachine
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\AbstractMachine\getEngine
getEngine()
Definition:
AbstractMachine.php:44
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines
Definition:
AbstractMachine.php:20
ILIAS\ResourceStorage\Flavour\Machine\FlavourMachine
Definition:
FlavourMachine.php:30
ILIAS\ResourceStorage\Flavour\Engine\Engine
Definition:
Engine.php:26
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\AbstractMachine\$engine
Engine $engine
Definition:
AbstractMachine.php:31
Engine
ILIAS\ResourceStorage\Flavour\Machine\DefaultMachines\AbstractMachine\__construct
__construct()
FlavourMachines must be able to be created without further dependencies.
Definition:
AbstractMachine.php:33
src
ResourceStorage
Flavour
Machine
DefaultMachines
AbstractMachine.php
Generated on Wed Sep 10 2025 14:12:07 for ILIAS by
1.8.13 (using
Doxyfile
)