Skip to content

Commit 0a946a5

Browse files
committed
Replace use of deprecated Status methods
(as well as a really out-of-place serialize()) Change-Id: I13a8356c6034b3c7d04e0aaa17949229ec2d0409
1 parent 6c0ecef commit 0a946a5

File tree

2 files changed

+18
-12
lines changed

2 files changed

+18
-12
lines changed

ServiceWiring.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
<?php
22

3+
use MediaWiki\Context\RequestContext;
34
use MediaWiki\Extension\Notifications\AttributeManager;
45
use MediaWiki\Extension\Notifications\Cache\RevisionLocalCache;
56
use MediaWiki\Extension\Notifications\Cache\TitleLocalCache;
@@ -39,8 +40,9 @@
3940
): NotificationServiceClient {
4041
$echoConfig = $services->getConfigFactory()->makeConfig( 'Echo' );
4142
$httpRequestFactory = $services->getHttpRequestFactory();
43+
$statusFormatter = $services->getFormatterFactory()->getStatusFormatter( RequestContext::getMain() );
4244
$url = $echoConfig->get( 'EchoPushServiceBaseUrl' );
43-
$client = new NotificationServiceClient( $httpRequestFactory, $url );
45+
$client = new NotificationServiceClient( $httpRequestFactory, $statusFormatter, $url );
4446
$client->setLogger( LoggerFactory::getInstance( 'Echo' ) );
4547
return $client;
4648
},

includes/Push/NotificationServiceClient.php

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
namespace MediaWiki\Extension\Notifications\Push;
44

55
use MediaWiki\Http\HttpRequestFactory;
6-
use MediaWiki\Status\Status;
6+
use MediaWiki\Status\StatusFormatter;
77
use MWHttpRequest;
88
use Psr\Log\LoggerAwareInterface;
99
use Psr\Log\LoggerAwareTrait;
@@ -15,15 +15,24 @@ class NotificationServiceClient implements LoggerAwareInterface {
1515
/** @var HttpRequestFactory */
1616
private $httpRequestFactory;
1717

18+
/** @var StatusFormatter */
19+
private $statusFormatter;
20+
1821
/** @var string */
1922
private $endpointBase;
2023

2124
/**
2225
* @param HttpRequestFactory $httpRequestFactory
26+
* @param StatusFormatter $statusFormatter
2327
* @param string $endpointBase push service notification request endpoint base URL
2428
*/
25-
public function __construct( HttpRequestFactory $httpRequestFactory, string $endpointBase ) {
29+
public function __construct(
30+
HttpRequestFactory $httpRequestFactory,
31+
StatusFormatter $statusFormatter,
32+
string $endpointBase
33+
) {
2634
$this->httpRequestFactory = $httpRequestFactory;
35+
$this->statusFormatter = $statusFormatter;
2736
$this->endpointBase = $endpointBase;
2837
}
2938

@@ -66,15 +75,10 @@ protected function sendRequest( string $provider, array $payload ): void {
6675
$request = $this->constructRequest( $provider, $payload );
6776
$status = $request->execute();
6877
if ( !$status->isOK() ) {
69-
$errors = $status->getErrorsByType( 'error' );
70-
$this->logger->warning(
71-
serialize( Status::wrap( $status )->getMessage( false, false, 'en' ) ),
72-
[
73-
'error' => $errors,
74-
'caller' => __METHOD__,
75-
'content' => $request->getContent()
76-
]
77-
);
78+
$this->logger->warning( ...$this->statusFormatter->getPsr3MessageAndContext( $status, [
79+
'caller' => __METHOD__,
80+
'content' => $request->getContent(),
81+
] ) );
7882
}
7983
}
8084

0 commit comments

Comments
 (0)