ILIAS  trunk Revision v11.0_alpha-3011-gc6b235a2e85
Flavour.php
Go to the documentation of this file.
1<?php
2
19declare(strict_types=1);
20
22
26
31{
32 private array $streams = [];
33 private array $stream_resolvers = [];
34
35 public function __construct(private FlavourDefinition $definition, private ResourceIdentification $resource_id, private int $revision)
36 {
37 }
38
44 public function getPersistingName(): string
45 {
46 return hash('crc32', $this->getName());
47 }
48
49 public function getName(): string
50 {
51 return $this->definition->getInternalName() . $this->definition->getVariantName();
52 }
53
55 {
56 return $this->resource_id;
57 }
58
59 public function withStreamResolver(int $index, ?StreamResolver $stream_resolver = null): Flavour
60 {
61 $this->stream_resolvers[$index] = $stream_resolver;
62
63 return $this;
64 }
65
66 public function maybeStreamResolver(int $index): ?StreamResolver
67 {
68 return $this->stream_resolvers[$index] ?? null;
69 }
70
74 public function getStreamResolvers(): array
75 {
77 }
78
80 {
81 return $this->definition;
82 }
83
84 public function getRevision(): int
85 {
86 return $this->revision;
87 }
88}
getPersistingName()
Flavours are stored in the file system by the StroageHandler.
Definition: Flavour.php:44
__construct(private FlavourDefinition $definition, private ResourceIdentification $resource_id, private int $revision)
Definition: Flavour.php:35
withStreamResolver(int $index, ?StreamResolver $stream_resolver=null)
Definition: Flavour.php:59