21use Wikimedia\AtEase\AtEase;
48 $this->filename = $filename;
49 $this->timestamp = $timestamp;
58 return [
'filename',
'timestamp' ];
62 if ( $this->timestamp ===
null ) {
63 AtEase::suppressWarnings();
64 # Dependency on a non-existent file stores "false"
65 # This is a valid concept!
66 $this->timestamp = filemtime( $this->filename );
67 AtEase::restoreWarnings();
72 AtEase::suppressWarnings();
73 $lastmod = filemtime( $this->filename );
74 AtEase::restoreWarnings();
75 if ( $lastmod ===
false ) {
76 if ( $this->timestamp ===
false ) {
82 wfDebug(
"Dependency triggered: {$this->filename} deleted." );
87 if ( $lastmod > $this->timestamp ) {
89 wfDebug(
"Dependency triggered: {$this->filename} changed." );
wfDebug( $text, $dest='all', array $context=[])
Sends a line to the debug log if enabled or, optionally, to a comment in output.
Base class to represent dependencies for LocalisationCache entries.
__construct( $filename, $timestamp=null)
Create a file dependency.
isExpired()
Returns true if the dependency is expired, false otherwise.
loadDependencyValues()
Hook to perform any expensive pre-serialize loading of dependency values.