ILIAS  release_7 Revision v7.30-3-g800a261c036
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

 $stack = []
 

Detailed Description

Member Function Documentation

◆ addPolicy()

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

Definition at line 17 of file FileNamePolicyStack.php.

17  : void
18  {
19  $this->stack[] = $policy;
20  }

◆ check()

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

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 50 of file FileNamePolicyStack.php.

50  : bool
51  {
52  foreach ($this->stack as $policy) {
53  $policy->check($extension);
54  }
55  return true;
56  }

◆ isBlockedExtension()

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

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 32 of file FileNamePolicyStack.php.

32  : bool
33  {
34  foreach ($this->stack as $policy) {
35  if (!$policy->isBlockedExtension($extension)) {
36  return false;
37  }
38  }
39  return true;
40  }

◆ isValidExtension()

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

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 22 of file FileNamePolicyStack.php.

22  : bool
23  {
24  foreach ($this->stack as $policy) {
25  if (!$policy->isValidExtension($extension)) {
26  return false;
27  }
28  }
29  return true;
30  }

◆ prepareFileNameForConsumer()

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

Implements ILIAS\ResourceStorage\Policy\FileNamePolicy.

Definition at line 42 of file FileNamePolicyStack.php.

42  : string
43  {
44  foreach ($this->stack as $policy) {
45  $filename_with_extension = $policy->prepareFileNameForConsumer($filename_with_extension);
46  }
47  return $filename_with_extension;
48  }

Field Documentation

◆ $stack

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

Definition at line 15 of file FileNamePolicyStack.php.


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