Moodle PHP Documentation 4.2
Moodle 4.2.8 (Build: 20240610) (2d41ac46f45)
core\lock\installation_lock_factory Class Reference

Lock factory for use during installation. More...

Inheritance diagram for core\lock\installation_lock_factory:
core\lock\lock_factory

Public Member Functions

 __construct ($type)
 Create this lock factory.
 
 extend_lock (lock $lock, $maxlifetime=86400)
 Extend a lock that was previously obtained with @lock.
 
 get_lock ($resource, $timeout, $maxlifetime=86400)
 Get a lock within the specified timeout or return false.
 
 is_available ()
 This lock factory is only available during the initial installation.
 
 release_lock (lock $lock)
 Release a lock that was previously obtained with @lock.
 
 supports_auto_release ()
 This lock type will be automatically released when a process ends.
 
 supports_recursion ()
 Multiple locks for the same resource cannot be held from a single process.
 
 supports_timeout ()
 Return information about the blocking behaviour of the lock type on this platform.
 

Protected Member Functions

 get_debug_info ()
 Get some info that might be useful for debugging.
 

Detailed Description

Lock factory for use during installation.

License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Constructor & Destructor Documentation

◆ __construct()

core\lock\installation_lock_factory::__construct ( $type)

Create this lock factory.

Parameters
string$type- The type, e.g. cron, cache, session

Implements core\lock\lock_factory.

Member Function Documentation

◆ extend_lock()

core\lock\installation_lock_factory::extend_lock ( lock $lock,
$maxlifetime = 86400 )

Extend a lock that was previously obtained with @lock.

Deprecated
since Moodle 3.10.
Parameters
lock$lock- not used
int$maxlifetime- not used
Return values
boolean- true if the lock was extended.

Implements core\lock\lock_factory.

◆ get_debug_info()

core\lock\installation_lock_factory::get_debug_info ( )
protected

Get some info that might be useful for debugging.

Return values
boolean- string

◆ get_lock()

core\lock\installation_lock_factory::get_lock ( $resource,
$timeout,
$maxlifetime = 86400 )

Get a lock within the specified timeout or return false.

Parameters
string$resource- The identifier for the lock. Should use frankenstyle prefix.
int$timeout- The number of seconds to wait for a lock before giving up.
int$maxlifetime- Unused by this lock type.
Return values
boolean- true if a lock was obtained.

Implements core\lock\lock_factory.

◆ is_available()

core\lock\installation_lock_factory::is_available ( )

This lock factory is only available during the initial installation.

To use it at any other time would be potentially dangerous.

Return values
boolean

Implements core\lock\lock_factory.

◆ release_lock()

core\lock\installation_lock_factory::release_lock ( lock $lock)

Release a lock that was previously obtained with @lock.

Parameters
lock$lock- A lock obtained from this factory.
Return values
boolean- true if the lock is no longer held (including if it was never held).

Implements core\lock\lock_factory.

◆ supports_auto_release()

core\lock\installation_lock_factory::supports_auto_release ( )

This lock type will be automatically released when a process ends.

Return values
boolean- True

Implements core\lock\lock_factory.

◆ supports_recursion()

core\lock\installation_lock_factory::supports_recursion ( )

Multiple locks for the same resource cannot be held from a single process.

Deprecated
since Moodle 3.10.
Return values
boolean- False

Implements core\lock\lock_factory.

◆ supports_timeout()

core\lock\installation_lock_factory::supports_timeout ( )

Return information about the blocking behaviour of the lock type on this platform.

Return values
boolean- False if attempting to get a lock will block indefinitely.

Implements core\lock\lock_factory.


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