mediawiki-extensions-AbuseF.../includes/Consequences/Parameters.php
Daimona Eaytoy 8639e0c368 Introduce subclasses of Filter with specific use cases
In particular, this brings stronger typing for getID(), and we can get
rid of many phan suppressions.

Change-Id: Icbf3a6f7db8105082646ec227f62c09449fb165d
2021-01-17 00:47:29 +00:00

84 lines
1.5 KiB
PHP

<?php
namespace MediaWiki\Extension\AbuseFilter\Consequences;
use MediaWiki\Extension\AbuseFilter\Filter\ExistingFilter;
use MediaWiki\Linker\LinkTarget;
use MediaWiki\User\UserIdentity;
/**
* Immutable value object that provides "base" parameters to Consequence objects
*/
class Parameters {
/** @var ExistingFilter */
private $filter;
/** @var bool */
private $isGlobalFilter;
/** @var UserIdentity */
private $user;
/** @var LinkTarget */
private $target;
/** @var string */
private $action;
/**
* @param ExistingFilter $filter
* @param bool $isGlobalFilter
* @param UserIdentity $user
* @param LinkTarget $target
* @param string $action
*/
public function __construct(
ExistingFilter $filter,
bool $isGlobalFilter,
UserIdentity $user,
LinkTarget $target,
string $action
) {
$this->filter = $filter;
$this->isGlobalFilter = $isGlobalFilter;
$this->user = $user;
$this->target = $target;
$this->action = $action;
}
/**
* @return ExistingFilter
*/
public function getFilter(): ExistingFilter {
return $this->filter;
}
/**
* @return bool
*/
public function getIsGlobalFilter(): bool {
return $this->isGlobalFilter;
}
/**
* @return UserIdentity
*/
public function getUser(): UserIdentity {
return $this->user;
}
/**
* @return LinkTarget
*/
public function getTarget(): LinkTarget {
return $this->target;
}
/**
* @return string
*/
public function getAction(): string {
return $this->action;
}
}