Package com.google.cloud
Class Policy.Builder
- java.lang.Object
-
- com.google.cloud.Policy.Builder
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Policy.Builder
addIdentity(Role role, Identity first, Identity... others)
Adds one or more identities to the policy under the role specified.Policy
build()
Creates aPolicy
object.Policy.Builder
removeIdentity(Role role, Identity first, Identity... others)
Removes one or more identities from an existing binding.Policy.Builder
removeRole(Role role)
Removes the role (and all identities associated with that role) from the policy.Policy.Builder
setBindings(List<Binding> bindings)
Replaces the builder's List of bindings with the given List of Bindings.Policy.Builder
setBindings(Map<Role,Set<Identity>> bindings)
Replaces the builder's map of bindings with the given map of bindings.Policy.Builder
setEtag(String etag)
Sets the policy's etag.Policy.Builder
setVersion(int version)
Sets the version of the policy.
-
-
-
Constructor Detail
-
Builder
@InternalApi("This class should only be extended within google-cloud-java") protected Builder()
-
Builder
@InternalApi("This class should only be extended within google-cloud-java") protected Builder(Policy policy)
-
-
Method Detail
-
setBindings
public final Policy.Builder setBindings(Map<Role,Set<Identity>> bindings)
Replaces the builder's map of bindings with the given map of bindings.- Throws:
NullPointerException
- if the given map is null or contains any null keys or valuesIllegalArgumentException
- if any identities in the given map are null or if policy version is equal to 3 or has conditional bindings because conditional policies are not supported
-
setBindings
public final Policy.Builder setBindings(List<Binding> bindings)
Replaces the builder's List of bindings with the given List of Bindings.- Throws:
NullPointerException
- if the given list is null, role is null, or contains any null members in bindings
-
removeRole
public final Policy.Builder removeRole(Role role)
Removes the role (and all identities associated with that role) from the policy.- Throws:
IllegalArgumentException
- if policy version is equal to 3 or has conditional bindings because conditional policies are not supported
-
addIdentity
public final Policy.Builder addIdentity(Role role, Identity first, Identity... others)
Adds one or more identities to the policy under the role specified.- Throws:
NullPointerException
- if the role or any of the identities is null.IllegalArgumentException
- if policy version is equal to 3 or has conditional bindings.
-
removeIdentity
public final Policy.Builder removeIdentity(Role role, Identity first, Identity... others)
Removes one or more identities from an existing binding. Does nothing if the binding associated with the provided role doesn't exist.- Throws:
IllegalArgumentException
- if policy version is equal to 3 or has conditional bindings
-
setEtag
public final Policy.Builder setEtag(String etag)
Sets the policy's etag.Etags are 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. If no etag is provided in the call to setIamPolicy, then the existing policy is overwritten blindly.
-
setVersion
public final Policy.Builder setVersion(int version)
Sets the version of the policy.
-
build
public final Policy build()
Creates aPolicy
object.
-
-