19 $this->stack[] = $policy;
24 foreach ($this->stack as $policy) {
25 if (!$policy->isValidExtension($extension)) {
34 foreach ($this->stack as $policy) {
35 if (!$policy->isBlockedExtension($extension)) {
44 foreach ($this->stack as $policy) {
45 $filename_with_extension = $policy->prepareFileNameForConsumer($filename_with_extension);
47 return $filename_with_extension;
50 public function check(
string $extension) : bool
52 foreach ($this->stack as $policy) {
53 $policy->check($extension);
isBlockedExtension(string $extension)
prepareFileNameForConsumer(string $filename_with_extension)
Interface FileNamePolicy.
isValidExtension(string $extension)
addPolicy(FileNamePolicy $policy)
This file is part of ILIAS, a powerful learning management system published by ILIAS open source e-Le...
Class FileNamePolicyStack.