Class Explanations.BindingExplanation.Builder

    • Method Detail

      • getDescriptor

        public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
      • internalGetMapField

        protected com.google.protobuf.MapField internalGetMapField​(int number)
        Overrides:
        internalGetMapField in class com.google.protobuf.GeneratedMessageV3.Builder<Explanations.BindingExplanation.Builder>
      • internalGetMutableMapField

        protected com.google.protobuf.MapField internalGetMutableMapField​(int number)
        Overrides:
        internalGetMutableMapField in class com.google.protobuf.GeneratedMessageV3.Builder<Explanations.BindingExplanation.Builder>
      • internalGetFieldAccessorTable

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<Explanations.BindingExplanation.Builder>
      • getDescriptorForType

        public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
        Specified by:
        getDescriptorForType in interface com.google.protobuf.Message.Builder
        Specified by:
        getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
        Overrides:
        getDescriptorForType in class com.google.protobuf.GeneratedMessageV3.Builder<Explanations.BindingExplanation.Builder>
      • getDefaultInstanceForType

        public Explanations.BindingExplanation getDefaultInstanceForType()
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
        Specified by:
        getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
      • build

        public Explanations.BindingExplanation build()
        Specified by:
        build in interface com.google.protobuf.Message.Builder
        Specified by:
        build in interface com.google.protobuf.MessageLite.Builder
      • buildPartial

        public Explanations.BindingExplanation buildPartial()
        Specified by:
        buildPartial in interface com.google.protobuf.Message.Builder
        Specified by:
        buildPartial in interface com.google.protobuf.MessageLite.Builder
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3.Builder<Explanations.BindingExplanation.Builder>
      • getAccessValue

        public int getAccessValue()
         Required. Indicates whether _this binding_ provides the specified
         permission to the specified principal for the specified resource.
        
         This field does _not_ indicate whether the principal actually has the
         permission for the resource. There might be another binding that overrides
         this binding. To determine whether the principal actually has the
         permission, use the `access` field in the
         [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
         
        .google.cloud.policytroubleshooter.v1.AccessState access = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getAccessValue in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The enum numeric value on the wire for access.
      • setAccessValue

        public Explanations.BindingExplanation.Builder setAccessValue​(int value)
         Required. Indicates whether _this binding_ provides the specified
         permission to the specified principal for the specified resource.
        
         This field does _not_ indicate whether the principal actually has the
         permission for the resource. There might be another binding that overrides
         this binding. To determine whether the principal actually has the
         permission, use the `access` field in the
         [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
         
        .google.cloud.policytroubleshooter.v1.AccessState access = 1 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The enum numeric value on the wire for access to set.
        Returns:
        This builder for chaining.
      • getAccess

        public Explanations.AccessState getAccess()
         Required. Indicates whether _this binding_ provides the specified
         permission to the specified principal for the specified resource.
        
         This field does _not_ indicate whether the principal actually has the
         permission for the resource. There might be another binding that overrides
         this binding. To determine whether the principal actually has the
         permission, use the `access` field in the
         [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
         
        .google.cloud.policytroubleshooter.v1.AccessState access = 1 [(.google.api.field_behavior) = REQUIRED];
        Specified by:
        getAccess in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The access.
      • setAccess

        public Explanations.BindingExplanation.Builder setAccess​(Explanations.AccessState value)
         Required. Indicates whether _this binding_ provides the specified
         permission to the specified principal for the specified resource.
        
         This field does _not_ indicate whether the principal actually has the
         permission for the resource. There might be another binding that overrides
         this binding. To determine whether the principal actually has the
         permission, use the `access` field in the
         [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
         
        .google.cloud.policytroubleshooter.v1.AccessState access = 1 [(.google.api.field_behavior) = REQUIRED];
        Parameters:
        value - The access to set.
        Returns:
        This builder for chaining.
      • clearAccess

        public Explanations.BindingExplanation.Builder clearAccess()
         Required. Indicates whether _this binding_ provides the specified
         permission to the specified principal for the specified resource.
        
         This field does _not_ indicate whether the principal actually has the
         permission for the resource. There might be another binding that overrides
         this binding. To determine whether the principal actually has the
         permission, use the `access` field in the
         [TroubleshootIamPolicyResponse][IamChecker.TroubleshootIamPolicyResponse].
         
        .google.cloud.policytroubleshooter.v1.AccessState access = 1 [(.google.api.field_behavior) = REQUIRED];
        Returns:
        This builder for chaining.
      • getRole

        public String getRole()
         The role that this binding grants. For example,
         `roles/compute.serviceAgent`.
        
         For a complete list of predefined IAM roles, as well as the permissions in
         each role, see https://cloud.google.com/iam/help/roles/reference.
         
        string role = 2;
        Specified by:
        getRole in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The role.
      • getRoleBytes

        public com.google.protobuf.ByteString getRoleBytes()
         The role that this binding grants. For example,
         `roles/compute.serviceAgent`.
        
         For a complete list of predefined IAM roles, as well as the permissions in
         each role, see https://cloud.google.com/iam/help/roles/reference.
         
        string role = 2;
        Specified by:
        getRoleBytes in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The bytes for role.
      • setRole

        public Explanations.BindingExplanation.Builder setRole​(String value)
         The role that this binding grants. For example,
         `roles/compute.serviceAgent`.
        
         For a complete list of predefined IAM roles, as well as the permissions in
         each role, see https://cloud.google.com/iam/help/roles/reference.
         
        string role = 2;
        Parameters:
        value - The role to set.
        Returns:
        This builder for chaining.
      • clearRole

        public Explanations.BindingExplanation.Builder clearRole()
         The role that this binding grants. For example,
         `roles/compute.serviceAgent`.
        
         For a complete list of predefined IAM roles, as well as the permissions in
         each role, see https://cloud.google.com/iam/help/roles/reference.
         
        string role = 2;
        Returns:
        This builder for chaining.
      • setRoleBytes

        public Explanations.BindingExplanation.Builder setRoleBytes​(com.google.protobuf.ByteString value)
         The role that this binding grants. For example,
         `roles/compute.serviceAgent`.
        
         For a complete list of predefined IAM roles, as well as the permissions in
         each role, see https://cloud.google.com/iam/help/roles/reference.
         
        string role = 2;
        Parameters:
        value - The bytes for role to set.
        Returns:
        This builder for chaining.
      • getRolePermissionValue

        public int getRolePermissionValue()
         Indicates whether the role granted by this binding contains the specified
         permission.
         
        .google.cloud.policytroubleshooter.v1.BindingExplanation.RolePermission role_permission = 3;
        Specified by:
        getRolePermissionValue in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The enum numeric value on the wire for rolePermission.
      • setRolePermissionValue

        public Explanations.BindingExplanation.Builder setRolePermissionValue​(int value)
         Indicates whether the role granted by this binding contains the specified
         permission.
         
        .google.cloud.policytroubleshooter.v1.BindingExplanation.RolePermission role_permission = 3;
        Parameters:
        value - The enum numeric value on the wire for rolePermission to set.
        Returns:
        This builder for chaining.
      • clearRolePermission

        public Explanations.BindingExplanation.Builder clearRolePermission()
         Indicates whether the role granted by this binding contains the specified
         permission.
         
        .google.cloud.policytroubleshooter.v1.BindingExplanation.RolePermission role_permission = 3;
        Returns:
        This builder for chaining.
      • getRolePermissionRelevanceValue

        public int getRolePermissionRelevanceValue()
         The relevance of the permission's existence, or nonexistence, in the role
         to the overall determination for the entire policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance role_permission_relevance = 4;
        Specified by:
        getRolePermissionRelevanceValue in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The enum numeric value on the wire for rolePermissionRelevance.
      • setRolePermissionRelevanceValue

        public Explanations.BindingExplanation.Builder setRolePermissionRelevanceValue​(int value)
         The relevance of the permission's existence, or nonexistence, in the role
         to the overall determination for the entire policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance role_permission_relevance = 4;
        Parameters:
        value - The enum numeric value on the wire for rolePermissionRelevance to set.
        Returns:
        This builder for chaining.
      • setRolePermissionRelevance

        public Explanations.BindingExplanation.Builder setRolePermissionRelevance​(Explanations.HeuristicRelevance value)
         The relevance of the permission's existence, or nonexistence, in the role
         to the overall determination for the entire policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance role_permission_relevance = 4;
        Parameters:
        value - The rolePermissionRelevance to set.
        Returns:
        This builder for chaining.
      • clearRolePermissionRelevance

        public Explanations.BindingExplanation.Builder clearRolePermissionRelevance()
         The relevance of the permission's existence, or nonexistence, in the role
         to the overall determination for the entire policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance role_permission_relevance = 4;
        Returns:
        This builder for chaining.
      • getMembershipsCount

        public int getMembershipsCount()
        Description copied from interface: Explanations.BindingExplanationOrBuilder
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
        Specified by:
        getMembershipsCount in interface Explanations.BindingExplanationOrBuilder
      • containsMemberships

        public boolean containsMemberships​(String key)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
        Specified by:
        containsMemberships in interface Explanations.BindingExplanationOrBuilder
      • getMembershipsMap

        public Map<String,​Explanations.BindingExplanation.AnnotatedMembership> getMembershipsMap()
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
        Specified by:
        getMembershipsMap in interface Explanations.BindingExplanationOrBuilder
      • getMembershipsOrDefault

        public Explanations.BindingExplanation.AnnotatedMembership getMembershipsOrDefault​(String key,
                                                                                           Explanations.BindingExplanation.AnnotatedMembership defaultValue)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
        Specified by:
        getMembershipsOrDefault in interface Explanations.BindingExplanationOrBuilder
      • getMembershipsOrThrow

        public Explanations.BindingExplanation.AnnotatedMembership getMembershipsOrThrow​(String key)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
        Specified by:
        getMembershipsOrThrow in interface Explanations.BindingExplanationOrBuilder
      • removeMemberships

        public Explanations.BindingExplanation.Builder removeMemberships​(String key)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
      • putMemberships

        public Explanations.BindingExplanation.Builder putMemberships​(String key,
                                                                      Explanations.BindingExplanation.AnnotatedMembership value)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
      • putAllMemberships

        public Explanations.BindingExplanation.Builder putAllMemberships​(Map<String,​Explanations.BindingExplanation.AnnotatedMembership> values)
         Indicates whether each principal in the binding includes the principal
         specified in the request, either directly or indirectly. Each key
         identifies a principal in the binding, and each value indicates whether the
         principal in the binding includes the principal in the request.
        
         For example, suppose that a binding includes the following principals:
        
         * `user:alice@example.com`
         * `group:product-eng@example.com`
        
         You want to troubleshoot access for `user:bob@example.com`. This user is a
         principal of the group `group:product-eng@example.com`.
        
         For the first principal in the binding, the key is
         `user:alice@example.com`, and the `membership` field in the value is set to
         `MEMBERSHIP_NOT_INCLUDED`.
        
         For the second principal in the binding, the key is
         `group:product-eng@example.com`, and the `membership` field in the value is
         set to `MEMBERSHIP_INCLUDED`.
         
        map<string, .google.cloud.policytroubleshooter.v1.BindingExplanation.AnnotatedMembership> memberships = 5;
      • getRelevanceValue

        public int getRelevanceValue()
         The relevance of this binding to the overall determination for the entire
         policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance relevance = 6;
        Specified by:
        getRelevanceValue in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The enum numeric value on the wire for relevance.
      • setRelevanceValue

        public Explanations.BindingExplanation.Builder setRelevanceValue​(int value)
         The relevance of this binding to the overall determination for the entire
         policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance relevance = 6;
        Parameters:
        value - The enum numeric value on the wire for relevance to set.
        Returns:
        This builder for chaining.
      • setRelevance

        public Explanations.BindingExplanation.Builder setRelevance​(Explanations.HeuristicRelevance value)
         The relevance of this binding to the overall determination for the entire
         policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance relevance = 6;
        Parameters:
        value - The relevance to set.
        Returns:
        This builder for chaining.
      • clearRelevance

        public Explanations.BindingExplanation.Builder clearRelevance()
         The relevance of this binding to the overall determination for the entire
         policy.
         
        .google.cloud.policytroubleshooter.v1.HeuristicRelevance relevance = 6;
        Returns:
        This builder for chaining.
      • hasCondition

        public boolean hasCondition()
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
        Specified by:
        hasCondition in interface Explanations.BindingExplanationOrBuilder
        Returns:
        Whether the condition field is set.
      • getCondition

        public com.google.type.Expr getCondition()
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
        Specified by:
        getCondition in interface Explanations.BindingExplanationOrBuilder
        Returns:
        The condition.
      • setCondition

        public Explanations.BindingExplanation.Builder setCondition​(com.google.type.Expr value)
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
      • setCondition

        public Explanations.BindingExplanation.Builder setCondition​(com.google.type.Expr.Builder builderForValue)
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
      • mergeCondition

        public Explanations.BindingExplanation.Builder mergeCondition​(com.google.type.Expr value)
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
      • clearCondition

        public Explanations.BindingExplanation.Builder clearCondition()
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
      • getConditionBuilder

        public com.google.type.Expr.Builder getConditionBuilder()
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
      • getConditionOrBuilder

        public com.google.type.ExprOrBuilder getConditionOrBuilder()
         A condition expression that prevents this binding from granting access
         unless the expression evaluates to `true`.
        
         To learn about IAM Conditions, see
         https://cloud.google.com/iam/help/conditions/overview.
         
        .google.type.Expr condition = 7;
        Specified by:
        getConditionOrBuilder in interface Explanations.BindingExplanationOrBuilder