X-Git-Url: https://git.heureux-cyclage.org/?a=blobdiff_plain;f=includes%2Fjobqueue%2FJobQueueSecondTestQueue.php;h=01f467f20b4e75e14177486f4b6b933f879cf0e8;hb=9d45c214cd805114f445e011ca6132818364759d;hp=a1935dfa0ddab59fb8ddca176fe44a17f923b5c3;hpb=2a1b1880eaadd4c35bc789870a45e45f14ffdb26;p=lhc%2Fweb%2Fwiklou.git diff --git a/includes/jobqueue/JobQueueSecondTestQueue.php b/includes/jobqueue/JobQueueSecondTestQueue.php index a1935dfa0d..01f467f20b 100644 --- a/includes/jobqueue/JobQueueSecondTestQueue.php +++ b/includes/jobqueue/JobQueueSecondTestQueue.php @@ -27,6 +27,11 @@ class JobQueueSecondTestQueue extends JobQueue { */ private $debugQueue; + /** + * @var bool + */ + private $onlyWriteToDebugQueue; + protected function __construct( array $params ) { if ( !isset( $params['mainqueue'] ) ) { throw new MWException( "mainqueue parameter must be provided to the debug queue" ); @@ -39,6 +44,7 @@ class JobQueueSecondTestQueue extends JobQueue { $conf = [ 'wiki' => $params['wiki'], 'type' => $params['type'] ]; $this->mainQueue = JobQueue::factory( $params['mainqueue'] + $conf ); $this->debugQueue = JobQueue::factory( $params['debugqueue'] + $conf ); + $this->onlyWriteToDebugQueue = isset( $params['readonly'] ) ? $params['readonly'] : false; // We need to construct parent after creating the main and debug queue // because super constructor calls some methods we delegate to the main queue. @@ -118,7 +124,9 @@ class JobQueueSecondTestQueue extends JobQueue { * @param int $flags */ protected function doBatchPush( array $jobs, $flags ) { - $this->mainQueue->doBatchPush( $jobs, $flags ); + if ( !$this->onlyWriteToDebugQueue ) { + $this->mainQueue->doBatchPush( $jobs, $flags ); + } try { $this->debugQueue->doBatchPush( $jobs, $flags ); @@ -138,6 +146,7 @@ class JobQueueSecondTestQueue extends JobQueue { /** * @see JobQueue::ack() * @param Job $job + * @return Job|bool */ protected function doAck( Job $job ) { return $this->mainQueue->doAck( $job ); @@ -172,6 +181,7 @@ class JobQueueSecondTestQueue extends JobQueue { /** * @see JobQueue::delete() + * @return bool * @throws MWException */ protected function doDelete() {