@@ 84-95 (lines=12) @@ | ||
81 | * @return ScopedCallback to reset the overridden value |
|
82 | * @throws MWException |
|
83 | */ |
|
84 | public function overrideDeferredUpdatesAddCallableUpdateCallback( callable $callback ) { |
|
85 | if ( !defined( 'MW_PHPUNIT_TEST' ) ) { |
|
86 | throw new MWException( |
|
87 | 'Cannot override DeferredUpdates::addCallableUpdate callback in operation.' |
|
88 | ); |
|
89 | } |
|
90 | $previousValue = $this->deferredUpdatesAddCallableUpdateCallback; |
|
91 | $this->deferredUpdatesAddCallableUpdateCallback = $callback; |
|
92 | return new ScopedCallback( function() use ( $previousValue ) { |
|
93 | $this->deferredUpdatesAddCallableUpdateCallback = $previousValue; |
|
94 | } ); |
|
95 | } |
|
96 | ||
97 | /** |
|
98 | * Overrides the Revision::getTimestampFromId callback |
|
@@ 107-118 (lines=12) @@ | ||
104 | * @return ScopedCallback to reset the overridden value |
|
105 | * @throws MWException |
|
106 | */ |
|
107 | public function overrideRevisionGetTimestampFromIdCallback( callable $callback ) { |
|
108 | if ( !defined( 'MW_PHPUNIT_TEST' ) ) { |
|
109 | throw new MWException( |
|
110 | 'Cannot override Revision::getTimestampFromId callback in operation.' |
|
111 | ); |
|
112 | } |
|
113 | $previousValue = $this->revisionGetTimestampFromIdCallback; |
|
114 | $this->revisionGetTimestampFromIdCallback = $callback; |
|
115 | return new ScopedCallback( function() use ( $previousValue ) { |
|
116 | $this->revisionGetTimestampFromIdCallback = $previousValue; |
|
117 | } ); |
|
118 | } |
|
119 | ||
120 | private function getCacheKey( User $user, LinkTarget $target ) { |
|
121 | return $this->cache->makeKey( |