mirror of
https://gerrit.wikimedia.org/r/mediawiki/extensions/Echo
synced 2024-11-11 17:00:10 +00:00
2a4f186400
It's all in the code now. These comments don't add anything any more. Change-Id: I66a3723c4fe9ccce989f5b533390d5ce928dc195
63 lines
1.3 KiB
PHP
63 lines
1.3 KiB
PHP
<?php
|
|
|
|
namespace MediaWiki\Extension\Notifications\Push;
|
|
|
|
use Wikimedia\Timestamp\ConvertibleTimestamp;
|
|
|
|
class Subscription {
|
|
|
|
/** @var string */
|
|
private $provider;
|
|
|
|
/** @var string */
|
|
private $token;
|
|
|
|
/** @var ConvertibleTimestamp */
|
|
private $updated;
|
|
|
|
/** @var string|null */
|
|
private $topic;
|
|
|
|
/**
|
|
* Construct a subscription from a DB result row.
|
|
* @param \stdClass $row echo_push_subscription row from IResultWrapper::fetchRow
|
|
* @return Subscription
|
|
*/
|
|
public static function newFromRow( object $row ) {
|
|
return new self(
|
|
$row->epp_name,
|
|
$row->eps_token,
|
|
$row->ept_text,
|
|
new ConvertibleTimestamp( $row->eps_updated )
|
|
);
|
|
}
|
|
|
|
public function __construct( string $provider, string $token, ?string $topic, ConvertibleTimestamp $updated ) {
|
|
$this->provider = $provider;
|
|
$this->token = $token;
|
|
$this->topic = $topic;
|
|
$this->updated = $updated;
|
|
}
|
|
|
|
/** @return string provider */
|
|
public function getProvider(): string {
|
|
return $this->provider;
|
|
}
|
|
|
|
/** @return string token */
|
|
public function getToken(): string {
|
|
return $this->token;
|
|
}
|
|
|
|
/** @return string|null topic */
|
|
public function getTopic(): ?string {
|
|
return $this->topic;
|
|
}
|
|
|
|
/** @return ConvertibleTimestamp last updated timestamp */
|
|
public function getUpdated(): ConvertibleTimestamp {
|
|
return $this->updated;
|
|
}
|
|
|
|
}
|