ILIAS  trunk Revision v11.0_alpha-1715-g7fc467680fb
All Data Structures Namespaces Files Functions Variables Enumerations Enumerator Modules Pages
Flavours.php
Go to the documentation of this file.
1 <?php
18 declare(strict_types=1);
19 
21 
25 
29 class Flavours
30 {
31  public function __construct(protected FlavourBuilder $flavour_builder, protected ResourceBuilder $resource_builder)
32  {
33  }
34 
35 
44  public function get(ResourceIdentification $rid, FlavourDefinition $flavour_definition): Flavour
45  {
46  return $this->flavour_builder->get($rid, $flavour_definition, false);
47  }
48 
52  public function ensure(ResourceIdentification $rid, FlavourDefinition $flavour_definition): void
53  {
54  if ($this->flavour_builder->has($rid, $flavour_definition)) {
55  return;
56  }
57  $this->flavour_builder->get($rid, $flavour_definition, true);
58  }
59 
64  public function has(ResourceIdentification $rid, FlavourDefinition $flavour_definition): bool
65  {
66  return $this->flavour_builder->has($rid, $flavour_definition);
67  }
68 
69 
74  public function remove(ResourceIdentification $rid, FlavourDefinition $flavour_definition): void
75  {
76  if ($this->has($rid, $flavour_definition)) {
77  $this->flavour_builder->delete($rid, $flavour_definition);
78  }
79  }
80 
81 
86  public function possible(ResourceIdentification $rid, FlavourDefinition $flavour_definition): bool
87  {
88  return $this->flavour_builder->testDefinition($rid, $flavour_definition);
89  }
90 }
has(ResourceIdentification $rid, FlavourDefinition $flavour_definition)
This can be used to ask whether a Flavor already exists for the FlavourDefinition for a certain IRSS ...
Definition: Flavours.php:64
ensure(ResourceIdentification $rid, FlavourDefinition $flavour_definition)
Actually like get(), but without return and can be used to create Flavour before you want to get them...
Definition: Flavours.php:52
__construct(protected FlavourBuilder $flavour_builder, protected ResourceBuilder $resource_builder)
Definition: Flavours.php:31
possible(ResourceIdentification $rid, FlavourDefinition $flavour_definition)
Hereby you can check in advance, if there is a Machine and an Engine for your FlavourDefinition, which can generate the Flavour you want.
Definition: Flavours.php:86