Code Duplication    Length = 12-12 lines in 2 locations

includes/WatchedItemStore.php 2 locations

@@ 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(