public function InvalidationBase::validateExpression in Purge 8.3
Validate the expression given to the invalidation during instantiation.
Throws
\Drupal\purge\Plugin\Purge\Invalidation\Exception\MissingExpressionException Thrown when plugin defined expression_required = TRUE and when it is instantiated without expression (NULL).
\Drupal\purge\Plugin\Purge\Invalidation\Exception\InvalidExpressionException Exception thrown when plugin got instantiated with an expression that is not deemed valid for the type of invalidation.
Overrides InvalidationInterface::validateExpression
See also
\Drupal\purge\Annotation\PurgeInvalidation::$expression_required
\Drupal\purge\Annotation\PurgeInvalidation::$expression_can_be_empty
4 calls to InvalidationBase::validateExpression()
- InvalidationBase::__construct in src/
Plugin/ Purge/ Invalidation/ InvalidationBase.php - Constructs \Drupal\purge\Plugin\Purge\Invalidation\InvalidationBase.
- PathInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ PathInvalidation.php - Validate the expression given to the invalidation during instantiation.
- TagInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ TagInvalidation.php - Validate the expression given to the invalidation during instantiation.
- UrlInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ UrlInvalidation.php - Validate the expression given to the invalidation during instantiation.
3 methods override InvalidationBase::validateExpression()
- PathInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ PathInvalidation.php - Validate the expression given to the invalidation during instantiation.
- TagInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ TagInvalidation.php - Validate the expression given to the invalidation during instantiation.
- UrlInvalidation::validateExpression in src/
Plugin/ Purge/ Invalidation/ UrlInvalidation.php - Validate the expression given to the invalidation during instantiation.
File
- src/
Plugin/ Purge/ Invalidation/ InvalidationBase.php, line 154
Class
- InvalidationBase
- Provides base implementations for the invalidation object.
Namespace
Drupal\purge\Plugin\Purge\InvalidationCode
public function validateExpression() {
$d = $this
->getPluginDefinition();
$type = strtolower($d['label']);
if ($d['expression_required'] && is_null($this->expression)) {
throw new MissingExpressionException(sprintf("Argument required for %s invalidation.", $type));
}
elseif ($d['expression_required'] && empty($this->expression) && !$d['expression_can_be_empty']) {
throw new InvalidExpressionException(sprintf("Argument required for %s invalidation.", $type));
}
elseif (!$d['expression_required'] && !is_null($this->expression)) {
throw new InvalidExpressionException(sprintf("Argument given for %s invalidation.", $type));
}
elseif (!is_null($this->expression) && !is_string($this->expression) && $d['expression_must_be_string']) {
throw new InvalidExpressionException(sprintf("String argument required for %s invalidation.", $type));
}
}