diff --git a/includes/AbuseFilter.php b/includes/AbuseFilter.php index c1e68393e..ac8cfeb45 100644 --- a/includes/AbuseFilter.php +++ b/includes/AbuseFilter.php @@ -1683,7 +1683,7 @@ class AbuseFilter { $obj->setVar( $key, $value ); } // If old variable names are used, make sure to keep them - if ( count( array_intersect_key( self::getDeprecatedVariables(), $obj->mVars ) ) !== 0 ) { + if ( count( array_intersect_key( self::getDeprecatedVariables(), $obj->getVars() ) ) !== 0 ) { $obj->mVarsVersion = 1; } } diff --git a/includes/AbuseFilterVariableHolder.php b/includes/AbuseFilterVariableHolder.php index d441faf1e..844f68abc 100644 --- a/includes/AbuseFilterVariableHolder.php +++ b/includes/AbuseFilterVariableHolder.php @@ -2,7 +2,7 @@ class AbuseFilterVariableHolder { /** @var (AFPData|AFComputedVariable)[] */ - public $mVars = []; + private $mVars = []; /** @var bool Whether this object is being used for an ongoing action being filtered */ public $forFilter = false; @@ -26,6 +26,15 @@ class AbuseFilterVariableHolder { $this->mVars[$variable] = $datum; } + /** + * Get all variables stored in this object + * + * @return (AFPData|AFComputedVariable)[] + */ + public function getVars() { + return $this->mVars; + } + /** * @param string $variable * @param string $method diff --git a/includes/parser/AbuseFilterCachingParser.php b/includes/parser/AbuseFilterCachingParser.php index 6b4a202b9..d5e021d1b 100644 --- a/includes/parser/AbuseFilterCachingParser.php +++ b/includes/parser/AbuseFilterCachingParser.php @@ -35,7 +35,7 @@ class AbuseFilterCachingParser extends AbuseFilterParser { * Resets the state of the parser */ public function resetState() { - $this->mVars = new AbuseFilterVariableHolder; + $this->mVariables = new AbuseFilterVariableHolder; $this->mCur = new AFPToken(); $this->mCondCount = 0; } @@ -250,10 +250,10 @@ class AbuseFilterCachingParser extends AbuseFilterParser { case AFPTreeNode::INDEX_ASSIGNMENT: list( $varName, $offset, $value ) = $node->children; - if ( !$this->mVars->varIsSet( $varName ) ) { + if ( !$this->mVariables->varIsSet( $varName ) ) { throw new AFPUserVisibleException( 'unrecognisedvar', $node->position, [ $varName ] ); } - $array = $this->mVars->getVar( $varName ); + $array = $this->mVariables->getVar( $varName ); if ( $array->type !== AFPData::DARRAY ) { throw new AFPUserVisibleException( 'notarray', $node->position, [] ); } @@ -273,7 +273,7 @@ class AbuseFilterCachingParser extends AbuseFilterParser { case AFPTreeNode::ARRAY_APPEND: list( $varName, $value ) = $node->children; - $array = $this->mVars->getVar( $varName ); + $array = $this->mVariables->getVar( $varName ); if ( $array->type !== AFPData::DARRAY ) { throw new AFPUserVisibleException( 'notarray', $node->position, [] ); } diff --git a/includes/parser/AbuseFilterParser.php b/includes/parser/AbuseFilterParser.php index 1617959cc..221eea5d839 100644 --- a/includes/parser/AbuseFilterParser.php +++ b/includes/parser/AbuseFilterParser.php @@ -28,7 +28,7 @@ class AbuseFilterParser { /** * @var AbuseFilterVariableHolder */ - public $mVars; + public $mVariables; /** * @var int The current amount of conditions being consumed @@ -103,7 +103,7 @@ class AbuseFilterParser { public function __construct( $vars = null ) { $this->resetState(); if ( $vars instanceof AbuseFilterVariableHolder ) { - $this->mVars = $vars; + $this->mVariables = $vars; } } @@ -149,7 +149,7 @@ class AbuseFilterParser { */ public function resetState() { $this->mTokens = []; - $this->mVars = new AbuseFilterVariableHolder; + $this->mVariables = new AbuseFilterVariableHolder; $this->mPos = 0; $this->mShortCircuit = false; $this->mAllowShort = true; @@ -314,13 +314,13 @@ class AbuseFilterParser { return; } elseif ( $this->mCur->type === AFPToken::TSQUAREBRACKET && $this->mCur->value === '[' ) { - if ( !$this->mVars->varIsSet( $varname ) ) { + if ( !$this->mVariables->varIsSet( $varname ) ) { throw new AFPUserVisibleException( 'unrecognisedvar', $this->mCur->pos, [ $varname ] ); } - $array = $this->mVars->getVar( $varname ); + $array = $this->mVariables->getVar( $varname ); if ( $array->type !== AFPData::DARRAY ) { throw new AFPUserVisibleException( 'notarray', $this->mCur->pos, [] ); } @@ -923,7 +923,7 @@ class AbuseFilterParser { $var = $deprecatedVars[$var]; } if ( !( array_key_exists( $var, $builderValues['vars'] ) - || $this->mVars->varIsSet( $var ) ) + || $this->mVariables->varIsSet( $var ) ) ) { $msg = array_key_exists( $var, AbuseFilter::$disabledVars ) ? 'disabledvar' : @@ -938,7 +938,7 @@ class AbuseFilterParser { [ $var ] ); } else { - return $this->mVars->getVar( $var ); + return $this->mVariables->getVar( $var ); } } @@ -956,7 +956,7 @@ class AbuseFilterParser { ) { throw new AFPUserVisibleException( 'overridebuiltin', $this->mCur->pos, [ $name ] ); } - $this->mVars->setVar( $name, $value ); + $this->mVariables->setVar( $name, $value ); } /** diff --git a/tests/phpunit/AbuseFilterConsequencesTest.php b/tests/phpunit/AbuseFilterConsequencesTest.php index 041668295..f3f0a1d9c 100644 --- a/tests/phpunit/AbuseFilterConsequencesTest.php +++ b/tests/phpunit/AbuseFilterConsequencesTest.php @@ -1335,7 +1335,7 @@ class AbuseFilterConsequencesTest extends MediaWikiTestCase { [ 'ORDER BY' => 'afl_timestamp DESC' ] ); - $vars = AbuseFilter::loadVarDump( $dumpID )->mVars; + $vars = AbuseFilter::loadVarDump( $dumpID )->getVars(); $interestingVars = array_intersect_key( $vars, array_fill_keys( $usedVars, true ) ); diff --git a/tests/phpunit/AbuseFilterTest.php b/tests/phpunit/AbuseFilterTest.php index 0a02e45a8..ecae25490 100644 --- a/tests/phpunit/AbuseFilterTest.php +++ b/tests/phpunit/AbuseFilterTest.php @@ -1237,7 +1237,7 @@ class AbuseFilterTest extends MediaWikiTestCase { $vars->addHolders( AbuseFilter::getEditVars( $title, $page ) ); $actualVariables = []; - foreach ( array_keys( $vars->mVars ) as $varName ) { + foreach ( array_keys( $vars->getVars() ) as $varName ) { $actualVariables[$varName] = $vars->getVar( $varName )->toNative(); }