ILIAS  release_8 Revision v8.19
All Data Structures Namespaces Files Functions Variables Modules Pages
ILIAS\ResourceStorage\Policy\FileNamePolicyStack Class Reference

Class FileNamePolicyStack. More...

+ Inheritance diagram for ILIAS\ResourceStorage\Policy\FileNamePolicyStack:
+ Collaboration diagram for ILIAS\ResourceStorage\Policy\FileNamePolicyStack:

Public Member Functions

 addPolicy (FileNamePolicy $policy)
 
 isValidExtension (string $extension)
 
 isBlockedExtension (string $extension)
 
 prepareFileNameForConsumer (string $filename_with_extension)
 
 check (string $extension)
 

Protected Attributes

array $stack = []
 

Detailed Description

Member Function Documentation

◆ addPolicy()

ILIAS\ResourceStorage\Policy\FileNamePolicyStack::addPolicy ( FileNamePolicy  $policy)

Definition at line 33 of file FileNamePolicyStack.php.

33  : void
34  {
35  $this->stack[] = $policy;
36  }

◆ check()

ILIAS\ResourceStorage\Policy\FileNamePolicyStack::check ( string  $extension)
Exceptions
FileNamePolicyException

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 66 of file FileNamePolicyStack.php.

66  : bool
67  {
68  foreach ($this->stack as $policy) {
69  $policy->check($extension);
70  }
71  return true;
72  }

◆ isBlockedExtension()

ILIAS\ResourceStorage\Policy\FileNamePolicyStack::isBlockedExtension ( string  $extension)

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 48 of file FileNamePolicyStack.php.

48  : bool
49  {
50  foreach ($this->stack as $policy) {
51  if (!$policy->isBlockedExtension($extension)) {
52  return false;
53  }
54  }
55  return true;
56  }

◆ isValidExtension()

ILIAS\ResourceStorage\Policy\FileNamePolicyStack::isValidExtension ( string  $extension)

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 38 of file FileNamePolicyStack.php.

38  : bool
39  {
40  foreach ($this->stack as $policy) {
41  if (!$policy->isValidExtension($extension)) {
42  return false;
43  }
44  }
45  return true;
46  }

◆ prepareFileNameForConsumer()

ILIAS\ResourceStorage\Policy\FileNamePolicyStack::prepareFileNameForConsumer ( string  $filename_with_extension)

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 58 of file FileNamePolicyStack.php.

58  : string
59  {
60  foreach ($this->stack as $policy) {
61  $filename_with_extension = $policy->prepareFileNameForConsumer($filename_with_extension);
62  }
63  return $filename_with_extension;
64  }

Field Documentation

◆ $stack

array ILIAS\ResourceStorage\Policy\FileNamePolicyStack::$stack = []
protected

Definition at line 31 of file FileNamePolicyStack.php.


The documentation for this class was generated from the following file: