Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 4.0.x will end 8 May 2023 (12 months).
  • Bug fixes for security issues in 4.0.x will end 13 November 2023 (18 months).
  • PHP version: minimum PHP 7.3.0 Note: the minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is also supported.

Differences Between: [Versions 310 and 400] [Versions 39 and 400]

(no description)

File Size: 190 lines (7 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class

FileBasedStrategy:: (8 methods):
  __construct()
  addStringForIndex()
  getSharedStringTempFilePath()
  closeCache()
  getStringAtIndex()
  escapeLineFeed()
  unescapeLineFeed()
  clearCache()


Class: FileBasedStrategy  - X-Ref

Class FileBasedStrategy

This class implements the file-based caching strategy for shared strings.
Shared strings are stored in small files (with a max number of strings per file).
This strategy is slower than an in-memory strategy but is used to avoid out of memory crashes.
__construct($tempFolder, $maxNumStringsPerTempFile, $helperFactory)   X-Ref

param: string $tempFolder Temporary folder where the temporary files to store shared strings will be stored
param: int $maxNumStringsPerTempFile Maximum number of strings that can be stored in one temp file
param: HelperFactory $helperFactory Factory to create helpers

addStringForIndex($sharedString, $sharedStringIndex)   X-Ref
Adds the given string to the cache.

return: void
param: string $sharedString The string to be added to the cache
param: int $sharedStringIndex Index of the shared string in the sharedStrings.xml file

getSharedStringTempFilePath($sharedStringIndex)   X-Ref
Returns the path for the temp file that should contain the string for the given index

return: string The temp file path for the given index
param: int $sharedStringIndex Index of the shared string in the sharedStrings.xml file

closeCache()   X-Ref
Closes the cache after the last shared string was added.
This prevents any additional string from being added to the cache.

return: void

getStringAtIndex($sharedStringIndex)   X-Ref
Returns the string located at the given index from the cache.

return: string The shared string at the given index
param: int $sharedStringIndex Index of the shared string in the sharedStrings.xml file

escapeLineFeed($unescapedString)   X-Ref
Escapes the line feed characters (\n)

return: string
param: string $unescapedString

unescapeLineFeed($escapedString)   X-Ref
Unescapes the line feed characters (\n)

return: string
param: string $escapedString

clearCache()   X-Ref
Destroys the cache, freeing memory and removing any created artifacts

return: void