ILIAS  release_10 Revision v10.1-43-ga1241a92c2f
Flavours.php
Go to the documentation of this file.
1 <?php
18 declare(strict_types=1);
19 
21 
25 
29 class Flavours
30 {
33 
34  public function __construct(
35  FlavourBuilder $flavour_builder,
36  ResourceBuilder $resource_builder
37  ) {
38  $this->flavour_builder = $flavour_builder;
39  $this->resource_builder = $resource_builder;
40  }
41 
42 
51  public function get(ResourceIdentification $rid, FlavourDefinition $flavour_definition): Flavour
52  {
53  return $this->flavour_builder->get($rid, $flavour_definition, false);
54  }
55 
59  public function ensure(ResourceIdentification $rid, FlavourDefinition $flavour_definition): void
60  {
61  if ($this->flavour_builder->has($rid, $flavour_definition)) {
62  return;
63  }
64  $this->flavour_builder->get($rid, $flavour_definition, true);
65  }
66 
71  public function has(ResourceIdentification $rid, FlavourDefinition $flavour_definition): bool
72  {
73  return $this->flavour_builder->has($rid, $flavour_definition);
74  }
75 
76 
81  public function remove(ResourceIdentification $rid, FlavourDefinition $flavour_definition): void
82  {
83  if ($this->has($rid, $flavour_definition)) {
84  $this->flavour_builder->delete($rid, $flavour_definition);
85  }
86  }
87 
88 
93  public function possible(ResourceIdentification $rid, FlavourDefinition $flavour_definition): bool
94  {
95  return $this->flavour_builder->testDefinition($rid, $flavour_definition);
96  }
97 }
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:71
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:59
__construct(FlavourBuilder $flavour_builder, ResourceBuilder $resource_builder)
Definition: Flavours.php:34
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:93