config = $config; } /** * @return SecurityPolicyRuleMatcherConfig */ public function getConfig() { return $this->config; } /** * User defined CEVAL expression. A CEVAL expression is used to specify match * criteria such as origin.ip, source.region_code and contents in the request * header. Expressions containing `evaluateThreatIntelligence` require a Cloud * Armor Enterprise subscription and are not supported in Edge Policies nor in * Regional Policies. Expressions containing * `evaluatePreconfiguredExpr('sourceiplist-*')` require a Cloud Armor * Enterprise subscription and are only supported in Global Security Policies. * * @param Expr $expr */ public function setExpr(Expr $expr) { $this->expr = $expr; } /** * @return Expr */ public function getExpr() { return $this->expr; } /** * The configuration options available when specifying a user defined CEVAL * expression (i.e., 'expr'). * * @param SecurityPolicyRuleMatcherExprOptions $exprOptions */ public function setExprOptions(SecurityPolicyRuleMatcherExprOptions $exprOptions) { $this->exprOptions = $exprOptions; } /** * @return SecurityPolicyRuleMatcherExprOptions */ public function getExprOptions() { return $this->exprOptions; } /** * Preconfigured versioned expression. If this field is specified, config must * also be specified. Available preconfigured expressions along with their * requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range * field in config. * * Accepted values: SRC_IPS_V1 * * @param self::VERSIONED_EXPR_* $versionedExpr */ public function setVersionedExpr($versionedExpr) { $this->versionedExpr = $versionedExpr; } /** * @return self::VERSIONED_EXPR_* */ public function getVersionedExpr() { return $this->versionedExpr; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(SecurityPolicyRuleMatcher::class, 'Google_Service_Compute_SecurityPolicyRuleMatcher');