ILIAS  trunk Revision v11.0_alpha-2645-g16283d3b3f8
FlavourMachine.php
Go to the documentation of this file.
1 <?php
2 
20 
25 
30 interface FlavourMachine
31 {
35  public function __construct();
36 
46  public function getId(): string;
47 
51  public function canHandleDefinition(FlavourDefinition $definition): bool;
52 
57  public function dependsOnEngine(): ?string;
58 
62  public function withEngine(Engine $engine): FlavourMachine;
63 
67  public function getEngine(): Engine;
68 
77  public function processStream(
78  FileInformation $information,
79  FileStream $stream,
80  FlavourDefinition $for_definition
81  ): \Generator;
82 }
processStream(FileInformation $information, FileStream $stream, FlavourDefinition $for_definition)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
canHandleDefinition(FlavourDefinition $definition)
Check if a corresponding configuration can be processed by this Machine.
withEngine(Engine $engine)
The demanded Engine will be passed here.
dependsOnEngine()
Return the class name of the Engine that is required for this Machine to work.
The base interface for all filesystem streams.
Definition: FileStream.php:31
__construct()
FlavourMachines must be able to be created without further dependencies.