1<?php
2/*
3 * Copyright 2014 Google Inc.
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
6 * use this file except in compliance with the License. You may obtain a copy of
7 * the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
14 * License for the specific language governing permissions and limitations under
15 * the License.
16 */
17
18namespace Google\Service\Compute;
19
20class SecurityPolicyRule extends \Google\Model
21{
22  /**
23   * @var string
24   */
25  public $action;
26  /**
27   * @var string
28   */
29  public $description;
30  protected $headerActionType = SecurityPolicyRuleHttpHeaderAction::class;
31  protected $headerActionDataType = '';
32  /**
33   * @var string
34   */
35  public $kind;
36  protected $matchType = SecurityPolicyRuleMatcher::class;
37  protected $matchDataType = '';
38  /**
39   * @var bool
40   */
41  public $preview;
42  /**
43   * @var int
44   */
45  public $priority;
46  protected $rateLimitOptionsType = SecurityPolicyRuleRateLimitOptions::class;
47  protected $rateLimitOptionsDataType = '';
48  protected $redirectOptionsType = SecurityPolicyRuleRedirectOptions::class;
49  protected $redirectOptionsDataType = '';
50
51  /**
52   * @param string
53   */
54  public function setAction($action)
55  {
56    $this->action = $action;
57  }
58  /**
59   * @return string
60   */
61  public function getAction()
62  {
63    return $this->action;
64  }
65  /**
66   * @param string
67   */
68  public function setDescription($description)
69  {
70    $this->description = $description;
71  }
72  /**
73   * @return string
74   */
75  public function getDescription()
76  {
77    return $this->description;
78  }
79  /**
80   * @param SecurityPolicyRuleHttpHeaderAction
81   */
82  public function setHeaderAction(SecurityPolicyRuleHttpHeaderAction $headerAction)
83  {
84    $this->headerAction = $headerAction;
85  }
86  /**
87   * @return SecurityPolicyRuleHttpHeaderAction
88   */
89  public function getHeaderAction()
90  {
91    return $this->headerAction;
92  }
93  /**
94   * @param string
95   */
96  public function setKind($kind)
97  {
98    $this->kind = $kind;
99  }
100  /**
101   * @return string
102   */
103  public function getKind()
104  {
105    return $this->kind;
106  }
107  /**
108   * @param SecurityPolicyRuleMatcher
109   */
110  public function setMatch(SecurityPolicyRuleMatcher $match)
111  {
112    $this->match = $match;
113  }
114  /**
115   * @return SecurityPolicyRuleMatcher
116   */
117  public function getMatch()
118  {
119    return $this->match;
120  }
121  /**
122   * @param bool
123   */
124  public function setPreview($preview)
125  {
126    $this->preview = $preview;
127  }
128  /**
129   * @return bool
130   */
131  public function getPreview()
132  {
133    return $this->preview;
134  }
135  /**
136   * @param int
137   */
138  public function setPriority($priority)
139  {
140    $this->priority = $priority;
141  }
142  /**
143   * @return int
144   */
145  public function getPriority()
146  {
147    return $this->priority;
148  }
149  /**
150   * @param SecurityPolicyRuleRateLimitOptions
151   */
152  public function setRateLimitOptions(SecurityPolicyRuleRateLimitOptions $rateLimitOptions)
153  {
154    $this->rateLimitOptions = $rateLimitOptions;
155  }
156  /**
157   * @return SecurityPolicyRuleRateLimitOptions
158   */
159  public function getRateLimitOptions()
160  {
161    return $this->rateLimitOptions;
162  }
163  /**
164   * @param SecurityPolicyRuleRedirectOptions
165   */
166  public function setRedirectOptions(SecurityPolicyRuleRedirectOptions $redirectOptions)
167  {
168    $this->redirectOptions = $redirectOptions;
169  }
170  /**
171   * @return SecurityPolicyRuleRedirectOptions
172   */
173  public function getRedirectOptions()
174  {
175    return $this->redirectOptions;
176  }
177}
178
179// Adding a class alias for backwards compatibility with the previous class name.
180class_alias(SecurityPolicyRule::class, 'Google_Service_Compute_SecurityPolicyRule');
181