Class Policy.Builder (2.12.0)

public static class Policy.Builder

A builder for Policy objects.

Inheritance

java.lang.Object > Policy.Builder

Constructors

Builder()

protected Builder()

Builder(Policy policy)

protected Builder(Policy policy)
Parameter
NameDescription
policyPolicy

Methods

addIdentity(Role role, Identity first, Identity[] others)

public final Policy.Builder addIdentity(Role role, Identity first, Identity[] others)

Adds one or more identities to the policy under the role specified.

Parameters
NameDescription
roleRole
firstIdentity
othersIdentity[]
Returns
TypeDescription
Policy.Builder

build()

public final Policy build()

Creates a Policy object.

Returns
TypeDescription
Policy

removeIdentity(Role role, Identity first, Identity[] others)

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.

Parameters
NameDescription
roleRole
firstIdentity
othersIdentity[]
Returns
TypeDescription
Policy.Builder

removeRole(Role role)

public final Policy.Builder removeRole(Role role)

Removes the role (and all identities associated with that role) from the policy.

Parameter
NameDescription
roleRole
Returns
TypeDescription
Policy.Builder

setBindings(List<Binding> bindings)

public final Policy.Builder setBindings(List<Binding> bindings)

Replaces the builder's List of bindings with the given List of Bindings.

Parameter
NameDescription
bindingsList<Binding>
Returns
TypeDescription
Policy.Builder

setBindings(Map<Role,Set<Identity>> bindings)

public final Policy.Builder setBindings(Map<Role,Set<Identity>> bindings)

Replaces the builder's map of bindings with the given map of bindings.

Parameter
NameDescription
bindingsMap<Role,Set<Identity>>
Returns
TypeDescription
Policy.Builder

setEtag(String etag)

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.

Parameter
NameDescription
etagString
Returns
TypeDescription
Policy.Builder

setVersion(int version)

public final Policy.Builder setVersion(int version)

Sets the version of the policy.

Parameter
NameDescription
versionint
Returns
TypeDescription
Policy.Builder