bindings = $bindings; } /** * @return Binding[] */ public function getBindings() { return $this->bindings; } /** * `etag` is used for optimistic concurrency control as a way to help prevent * simultaneous updates of a policy from overwriting each other. It is * strongly suggested that systems make use of the `etag` in the read-modify- * write cycle to perform policy updates in order to avoid race conditions: An * `etag` is returned in the response to `getIamPolicy`, and systems are * expected to put that etag in the request to `setIamPolicy` to ensure that * their change will be applied to the same version of the policy. * **Important:** If you use IAM Conditions, you must include the `etag` field * whenever you call `setIamPolicy`. If you omit this field, then IAM allows * you to overwrite a version `3` policy with a version `1` policy, and all of * the conditions in the version `3` policy are lost. * * @param string $etag */ public function setEtag($etag) { $this->etag = $etag; } /** * @return string */ public function getEtag() { return $this->etag; } /** * Specifies the format of the policy. Valid values are `0`, `1`, and `3`. * Requests that specify an invalid value are rejected. Any operation that * affects conditional role bindings must specify version `3`. This * requirement applies to the following operations: * Getting a policy that * includes a conditional role binding * Adding a conditional role binding to * a policy * Changing a conditional role binding in a policy * Removing any * role binding, with or without a condition, from a policy that includes * conditions **Important:** If you use IAM Conditions, you must include the * `etag` field whenever you call `setIamPolicy`. If you omit this field, then * IAM allows you to overwrite a version `3` policy with a version `1` policy, * and all of the conditions in the version `3` policy are lost. If a policy * does not include any conditions, operations on that policy may specify any * valid version or leave the field unset. To learn which resources support * conditions in their IAM policies, see the [IAM * documentation](https://cloud.google.com/iam/help/conditions/resource- * policies). * * @param int $version */ public function setVersion($version) { $this->version = $version; } /** * @return int */ public function getVersion() { return $this->version; } } // Adding a class alias for backwards compatibility with the previous class name. class_alias(Policy::class, 'Google_Service_CloudTasks_Policy');