Class IamPolicyAnalysisResult.AccessControlList.Builder

  • All Implemented Interfaces:
    IamPolicyAnalysisResult.AccessControlListOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
    Enclosing class:
    IamPolicyAnalysisResult.AccessControlList

    public static final class IamPolicyAnalysisResult.AccessControlList.Builder
    extends com.google.protobuf.GeneratedMessageV3.Builder<IamPolicyAnalysisResult.AccessControlList.Builder>
    implements IamPolicyAnalysisResult.AccessControlListOrBuilder
     An access control list, derived from the above IAM policy binding, which
     contains a set of resources and accesses. May include one
     item from each set to compose an access control entry.
    
     NOTICE that there could be multiple access control lists for one IAM policy
     binding. The access control lists are created based on resource and access
     combinations.
    
     For example, assume we have the following cases in one IAM policy binding:
     - Permission P1 and P2 apply to resource R1 and R2;
     - Permission P3 applies to resource R2 and R3;
    
     This will result in the following access control lists:
     - AccessControlList 1: [R1, R2], [P1, P2]
     - AccessControlList 2: [R2, R3], [P3]
     
    Protobuf type google.cloud.asset.v1.IamPolicyAnalysisResult.AccessControlList
    • Method Detail

      • getDescriptor

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

        protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
        Specified by:
        internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessageV3.Builder<IamPolicyAnalysisResult.AccessControlList.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<IamPolicyAnalysisResult.AccessControlList.Builder>
      • getDefaultInstanceForType

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

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

        public IamPolicyAnalysisResult.AccessControlList 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<IamPolicyAnalysisResult.AccessControlList.Builder>
      • getResourcesCount

        public int getResourcesCount()
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
        Specified by:
        getResourcesCount in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • clearResources

        public IamPolicyAnalysisResult.AccessControlList.Builder clearResources()
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • removeResources

        public IamPolicyAnalysisResult.AccessControlList.Builder removeResources​(int index)
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • getResourcesBuilder

        public IamPolicyAnalysisResult.Resource.Builder getResourcesBuilder​(int index)
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • addResourcesBuilder

        public IamPolicyAnalysisResult.Resource.Builder addResourcesBuilder()
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • addResourcesBuilder

        public IamPolicyAnalysisResult.Resource.Builder addResourcesBuilder​(int index)
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • getResourcesBuilderList

        public List<IamPolicyAnalysisResult.Resource.Builder> getResourcesBuilderList()
         The resources that match one of the following conditions:
         - The resource_selector, if it is specified in request;
         - Otherwise, resources reachable from the policy attached resource.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Resource resources = 1;
      • getAccessesCount

        public int getAccessesCount()
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
        Specified by:
        getAccessesCount in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • setAccesses

        public IamPolicyAnalysisResult.AccessControlList.Builder setAccesses​(int index,
                                                                             IamPolicyAnalysisResult.Access value)
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • addAccesses

        public IamPolicyAnalysisResult.AccessControlList.Builder addAccesses​(int index,
                                                                             IamPolicyAnalysisResult.Access value)
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • clearAccesses

        public IamPolicyAnalysisResult.AccessControlList.Builder clearAccesses()
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • removeAccesses

        public IamPolicyAnalysisResult.AccessControlList.Builder removeAccesses​(int index)
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • getAccessesBuilder

        public IamPolicyAnalysisResult.Access.Builder getAccessesBuilder​(int index)
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • addAccessesBuilder

        public IamPolicyAnalysisResult.Access.Builder addAccessesBuilder()
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • addAccessesBuilder

        public IamPolicyAnalysisResult.Access.Builder addAccessesBuilder​(int index)
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • getAccessesBuilderList

        public List<IamPolicyAnalysisResult.Access.Builder> getAccessesBuilderList()
         The accesses that match one of the following conditions:
         - The access_selector, if it is specified in request;
         - Otherwise, access specifiers reachable from the policy binding's role.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Access accesses = 2;
      • getResourceEdgesList

        public List<IamPolicyAnalysisResult.Edge> getResourceEdgesList()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
        Specified by:
        getResourceEdgesList in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • getResourceEdgesCount

        public int getResourceEdgesCount()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
        Specified by:
        getResourceEdgesCount in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • getResourceEdges

        public IamPolicyAnalysisResult.Edge getResourceEdges​(int index)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
        Specified by:
        getResourceEdges in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • setResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder setResourceEdges​(int index,
                                                                                  IamPolicyAnalysisResult.Edge value)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • setResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder setResourceEdges​(int index,
                                                                                  IamPolicyAnalysisResult.Edge.Builder builderForValue)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder addResourceEdges​(IamPolicyAnalysisResult.Edge value)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder addResourceEdges​(int index,
                                                                                  IamPolicyAnalysisResult.Edge value)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder addResourceEdges​(IamPolicyAnalysisResult.Edge.Builder builderForValue)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder addResourceEdges​(int index,
                                                                                  IamPolicyAnalysisResult.Edge.Builder builderForValue)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addAllResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder addAllResourceEdges​(Iterable<? extends IamPolicyAnalysisResult.Edge> values)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • clearResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder clearResourceEdges()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • removeResourceEdges

        public IamPolicyAnalysisResult.AccessControlList.Builder removeResourceEdges​(int index)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • getResourceEdgesBuilder

        public IamPolicyAnalysisResult.Edge.Builder getResourceEdgesBuilder​(int index)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • getResourceEdgesOrBuilder

        public IamPolicyAnalysisResult.EdgeOrBuilder getResourceEdgesOrBuilder​(int index)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
        Specified by:
        getResourceEdgesOrBuilder in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • getResourceEdgesOrBuilderList

        public List<? extends IamPolicyAnalysisResult.EdgeOrBuilder> getResourceEdgesOrBuilderList()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
        Specified by:
        getResourceEdgesOrBuilderList in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
      • addResourceEdgesBuilder

        public IamPolicyAnalysisResult.Edge.Builder addResourceEdgesBuilder()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • addResourceEdgesBuilder

        public IamPolicyAnalysisResult.Edge.Builder addResourceEdgesBuilder​(int index)
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • getResourceEdgesBuilderList

        public List<IamPolicyAnalysisResult.Edge.Builder> getResourceEdgesBuilderList()
         Resource edges of the graph starting from the policy attached
         resource to any descendant resources. The
         [Edge.source_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.source_node]
         contains the full resource name of a parent resource and
         [Edge.target_node][google.cloud.asset.v1.IamPolicyAnalysisResult.Edge.target_node]
         contains the full resource name of a child resource. This field is
         present only if the output_resource_edges option is enabled in request.
         
        repeated .google.cloud.asset.v1.IamPolicyAnalysisResult.Edge resource_edges = 3;
      • hasConditionEvaluation

        public boolean hasConditionEvaluation()
         Condition evaluation for this AccessControlList, if there is a condition
         defined in the above IAM policy binding.
         
        .google.cloud.asset.v1.ConditionEvaluation condition_evaluation = 4;
        Specified by:
        hasConditionEvaluation in interface IamPolicyAnalysisResult.AccessControlListOrBuilder
        Returns:
        Whether the conditionEvaluation field is set.
      • clearConditionEvaluation

        public IamPolicyAnalysisResult.AccessControlList.Builder clearConditionEvaluation()
         Condition evaluation for this AccessControlList, if there is a condition
         defined in the above IAM policy binding.
         
        .google.cloud.asset.v1.ConditionEvaluation condition_evaluation = 4;
      • getConditionEvaluationBuilder

        public ConditionEvaluation.Builder getConditionEvaluationBuilder()
         Condition evaluation for this AccessControlList, if there is a condition
         defined in the above IAM policy binding.
         
        .google.cloud.asset.v1.ConditionEvaluation condition_evaluation = 4;