Class Policy.ListPolicy

java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
com.google.cloud.orgpolicy.v1.Policy.ListPolicy
All Implemented Interfaces:
Policy.ListPolicyOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable
Enclosing class:
Policy

public static final class Policy.ListPolicy extends com.google.protobuf.GeneratedMessage implements Policy.ListPolicyOrBuilder
 Used in `policy_type` to specify how `list_policy` behaves at this
 resource.

 `ListPolicy` can define specific values and subtrees of Cloud Resource
 Manager resource hierarchy (`Organizations`, `Folders`, `Projects`) that
 are allowed or denied by setting the `allowed_values` and `denied_values`
 fields. This is achieved by using the `under:` and optional `is:` prefixes.
 The `under:` prefix is used to denote resource subtree values.
 The `is:` prefix is used to denote specific values, and is required only
 if the value contains a ":". Values prefixed with "is:" are treated the
 same as values with no prefix.
 Ancestry subtrees must be in one of the following formats:
 - "projects/<project-id>", e.g. "projects/tokyo-rain-123"
 - "folders/<folder-id>", e.g. "folders/1234"
 - "organizations/<organization-id>", e.g. "organizations/1234"
 The `supports_under` field of the associated `Constraint`  defines whether
 ancestry prefixes can be used. You can set `allowed_values` and
 `denied_values` in the same `Policy` if `all_values` is
 `ALL_VALUES_UNSPECIFIED`. `ALLOW` or `DENY` are used to allow or deny all
 values. If `all_values` is set to either `ALLOW` or `DENY`,
 `allowed_values` and `denied_values` must be unset.
 
Protobuf type google.cloud.orgpolicy.v1.Policy.ListPolicy
See Also:
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    This enum can be used to set `Policies` that apply to all possible configuration values rather than specific values in `allowed_values` or `denied_values`.
    static final class 
    Used in `policy_type` to specify how `list_policy` behaves at this resource.

    Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage

    com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT,BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message,T extends Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage

    com.google.protobuf.AbstractMessage.BuilderParent

    Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

    com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
     
    static final int
     
    static final int
     
    static final int
     
    static final int
     

    Fields inherited from class com.google.protobuf.GeneratedMessage

    alwaysUseFieldBuilders, loggedPre22TypeNames, unknownFields

    Fields inherited from class com.google.protobuf.AbstractMessage

    memoizedSize

    Fields inherited from class com.google.protobuf.AbstractMessageLite

    memoizedHashCode
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    getAllowedValues(int index)
    List of values allowed at this resource.
    com.google.protobuf.ByteString
    List of values allowed at this resource.
    int
    List of values allowed at this resource.
    com.google.protobuf.ProtocolStringList
    List of values allowed at this resource.
    The policy all_values state.
    int
    The policy all_values state.
     
     
    getDeniedValues(int index)
    List of values denied at this resource.
    com.google.protobuf.ByteString
    List of values denied at this resource.
    int
    List of values denied at this resource.
    com.google.protobuf.ProtocolStringList
    List of values denied at this resource.
    static final com.google.protobuf.Descriptors.Descriptor
     
    boolean
    Determines the inheritance behavior for this `Policy`.
    com.google.protobuf.Parser<Policy.ListPolicy>
     
    int
     
    Optional.
    com.google.protobuf.ByteString
    Optional.
    int
     
    protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
     
    final boolean
     
     
     
     
    newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
     
     
    parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(byte[] data)
     
    parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.ByteString data)
     
    parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    parseFrom(com.google.protobuf.CodedInputStream input)
     
    parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
     
    parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
     
    static com.google.protobuf.Parser<Policy.ListPolicy>
     
     
    void
    writeTo(com.google.protobuf.CodedOutputStream output)
     

    Methods inherited from class com.google.protobuf.GeneratedMessage

    canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeExtensionsImmutable, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag

    Methods inherited from class com.google.protobuf.AbstractMessage

    findInitializationErrors, getInitializationErrorString, hashFields, toString

    Methods inherited from class com.google.protobuf.AbstractMessageLite

    addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface com.google.protobuf.MessageLite

    toByteArray, toByteString, writeDelimitedTo, writeTo

    Methods inherited from interface com.google.protobuf.MessageOrBuilder

    findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
  • Field Details

    • ALLOWED_VALUES_FIELD_NUMBER

      public static final int ALLOWED_VALUES_FIELD_NUMBER
      See Also:
    • DENIED_VALUES_FIELD_NUMBER

      public static final int DENIED_VALUES_FIELD_NUMBER
      See Also:
    • ALL_VALUES_FIELD_NUMBER

      public static final int ALL_VALUES_FIELD_NUMBER
      See Also:
    • SUGGESTED_VALUE_FIELD_NUMBER

      public static final int SUGGESTED_VALUE_FIELD_NUMBER
      See Also:
    • INHERIT_FROM_PARENT_FIELD_NUMBER

      public static final int INHERIT_FROM_PARENT_FIELD_NUMBER
      See Also:
  • Method Details

    • getDescriptor

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

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage
    • getAllowedValuesList

      public com.google.protobuf.ProtocolStringList getAllowedValuesList()
       List of values allowed  at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string allowed_values = 1;
      Specified by:
      getAllowedValuesList in interface Policy.ListPolicyOrBuilder
      Returns:
      A list containing the allowedValues.
    • getAllowedValuesCount

      public int getAllowedValuesCount()
       List of values allowed  at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string allowed_values = 1;
      Specified by:
      getAllowedValuesCount in interface Policy.ListPolicyOrBuilder
      Returns:
      The count of allowedValues.
    • getAllowedValues

      public String getAllowedValues(int index)
       List of values allowed  at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string allowed_values = 1;
      Specified by:
      getAllowedValues in interface Policy.ListPolicyOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The allowedValues at the given index.
    • getAllowedValuesBytes

      public com.google.protobuf.ByteString getAllowedValuesBytes(int index)
       List of values allowed  at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string allowed_values = 1;
      Specified by:
      getAllowedValuesBytes in interface Policy.ListPolicyOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the allowedValues at the given index.
    • getDeniedValuesList

      public com.google.protobuf.ProtocolStringList getDeniedValuesList()
       List of values denied at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string denied_values = 2;
      Specified by:
      getDeniedValuesList in interface Policy.ListPolicyOrBuilder
      Returns:
      A list containing the deniedValues.
    • getDeniedValuesCount

      public int getDeniedValuesCount()
       List of values denied at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string denied_values = 2;
      Specified by:
      getDeniedValuesCount in interface Policy.ListPolicyOrBuilder
      Returns:
      The count of deniedValues.
    • getDeniedValues

      public String getDeniedValues(int index)
       List of values denied at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string denied_values = 2;
      Specified by:
      getDeniedValues in interface Policy.ListPolicyOrBuilder
      Parameters:
      index - The index of the element to return.
      Returns:
      The deniedValues at the given index.
    • getDeniedValuesBytes

      public com.google.protobuf.ByteString getDeniedValuesBytes(int index)
       List of values denied at this resource. Can only be set if `all_values`
       is set to `ALL_VALUES_UNSPECIFIED`.
       
      repeated string denied_values = 2;
      Specified by:
      getDeniedValuesBytes in interface Policy.ListPolicyOrBuilder
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the deniedValues at the given index.
    • getAllValuesValue

      public int getAllValuesValue()
       The policy all_values state.
       
      .google.cloud.orgpolicy.v1.Policy.ListPolicy.AllValues all_values = 3;
      Specified by:
      getAllValuesValue in interface Policy.ListPolicyOrBuilder
      Returns:
      The enum numeric value on the wire for allValues.
    • getAllValues

      public Policy.ListPolicy.AllValues getAllValues()
       The policy all_values state.
       
      .google.cloud.orgpolicy.v1.Policy.ListPolicy.AllValues all_values = 3;
      Specified by:
      getAllValues in interface Policy.ListPolicyOrBuilder
      Returns:
      The allValues.
    • getSuggestedValue

      public String getSuggestedValue()
       Optional. The Google Cloud Console will try to default to a configuration
       that matches the value specified in this `Policy`. If `suggested_value`
       is not set, it will inherit the value specified higher in the hierarchy,
       unless `inherit_from_parent` is `false`.
       
      string suggested_value = 4;
      Specified by:
      getSuggestedValue in interface Policy.ListPolicyOrBuilder
      Returns:
      The suggestedValue.
    • getSuggestedValueBytes

      public com.google.protobuf.ByteString getSuggestedValueBytes()
       Optional. The Google Cloud Console will try to default to a configuration
       that matches the value specified in this `Policy`. If `suggested_value`
       is not set, it will inherit the value specified higher in the hierarchy,
       unless `inherit_from_parent` is `false`.
       
      string suggested_value = 4;
      Specified by:
      getSuggestedValueBytes in interface Policy.ListPolicyOrBuilder
      Returns:
      The bytes for suggestedValue.
    • getInheritFromParent

      public boolean getInheritFromParent()
       Determines the inheritance behavior for this `Policy`.
      
       By default, a `ListPolicy` set at a resource supercedes any `Policy` set
       anywhere up the resource hierarchy. However, if `inherit_from_parent` is
       set to `true`, then the values from the effective `Policy` of the parent
       resource are inherited, meaning the values set in this `Policy` are
       added to the values inherited up the hierarchy.
      
       Setting `Policy` hierarchies that inherit both allowed values and denied
       values isn't recommended in most circumstances to keep the configuration
       simple and understandable. However, it is possible to set a `Policy` with
       `allowed_values` set that inherits a `Policy` with `denied_values` set.
       In this case, the values that are allowed must be in `allowed_values` and
       not present in `denied_values`.
      
       For example, suppose you have a `Constraint`
       `constraints/serviceuser.services`, which has a `constraint_type` of
       `list_constraint`, and with `constraint_default` set to `ALLOW`.
       Suppose that at the Organization level, a `Policy` is applied that
       restricts the allowed API activations to {`E1`, `E2`}. Then, if a
       `Policy` is applied to a project below the Organization that has
       `inherit_from_parent` set to `false` and field all_values set to DENY,
       then an attempt to activate any API will be denied.
      
       The following examples demonstrate different possible layerings for
       `projects/bar` parented by `organizations/foo`:
      
       Example 1 (no inherited values):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values:"E2"}
       `projects/bar` has `inherit_from_parent` `false` and values:
       {allowed_values: "E3" allowed_values: "E4"}
       The accepted values at `organizations/foo` are `E1`, `E2`.
       The accepted values at `projects/bar` are `E3`, and `E4`.
      
       Example 2 (inherited values):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values:"E2"}
       `projects/bar` has a `Policy` with values:
       {value: "E3" value: "E4" inherit_from_parent: true}
       The accepted values at `organizations/foo` are `E1`, `E2`.
       The accepted values at `projects/bar` are `E1`, `E2`, `E3`, and `E4`.
      
       Example 3 (inheriting both allowed and denied values):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values: "E2"}
       `projects/bar` has a `Policy` with:
       {denied_values: "E1"}
       The accepted values at `organizations/foo` are `E1`, `E2`.
       The value accepted at `projects/bar` is `E2`.
      
       Example 4 (RestoreDefault):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values:"E2"}
       `projects/bar` has a `Policy` with values:
       {RestoreDefault: {}}
       The accepted values at `organizations/foo` are `E1`, `E2`.
       The accepted values at `projects/bar` are either all or none depending on
       the value of `constraint_default` (if `ALLOW`, all; if
       `DENY`, none).
      
       Example 5 (no policy inherits parent policy):
       `organizations/foo` has no `Policy` set.
       `projects/bar` has no `Policy` set.
       The accepted values at both levels are either all or none depending on
       the value of `constraint_default` (if `ALLOW`, all; if
       `DENY`, none).
      
       Example 6 (ListConstraint allowing all):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values: "E2"}
       `projects/bar` has a `Policy` with:
       {all: ALLOW}
       The accepted values at `organizations/foo` are `E1`, E2`.
       Any value is accepted at `projects/bar`.
      
       Example 7 (ListConstraint allowing none):
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "E1" allowed_values: "E2"}
       `projects/bar` has a `Policy` with:
       {all: DENY}
       The accepted values at `organizations/foo` are `E1`, E2`.
       No value is accepted at `projects/bar`.
      
       Example 10 (allowed and denied subtrees of Resource Manager hierarchy):
       Given the following resource hierarchy
       O1->{F1, F2}; F1->{P1}; F2->{P2, P3},
       `organizations/foo` has a `Policy` with values:
       {allowed_values: "under:organizations/O1"}
       `projects/bar` has a `Policy` with:
       {allowed_values: "under:projects/P3"}
       {denied_values: "under:folders/F2"}
       The accepted values at `organizations/foo` are `organizations/O1`,
       `folders/F1`, `folders/F2`, `projects/P1`, `projects/P2`,
       `projects/P3`.
       The accepted values at `projects/bar` are `organizations/O1`,
       `folders/F1`, `projects/P1`.
       
      bool inherit_from_parent = 5;
      Specified by:
      getInheritFromParent in interface Policy.ListPolicyOrBuilder
      Returns:
      The inheritFromParent.
    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage
    • writeTo

      public void writeTo(com.google.protobuf.CodedOutputStream output) throws IOException
      Specified by:
      writeTo in interface com.google.protobuf.MessageLite
      Overrides:
      writeTo in class com.google.protobuf.GeneratedMessage
      Throws:
      IOException
    • getSerializedSize

      public int getSerializedSize()
      Specified by:
      getSerializedSize in interface com.google.protobuf.MessageLite
      Overrides:
      getSerializedSize in class com.google.protobuf.GeneratedMessage
    • equals

      public boolean equals(Object obj)
      Specified by:
      equals in interface com.google.protobuf.Message
      Overrides:
      equals in class com.google.protobuf.AbstractMessage
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in interface com.google.protobuf.Message
      Overrides:
      hashCode in class com.google.protobuf.AbstractMessage
    • parseFrom

      public static Policy.ListPolicy parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException
      Throws:
      com.google.protobuf.InvalidProtocolBufferException
    • parseFrom

      public static Policy.ListPolicy parseFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Policy.ListPolicy parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Policy.ListPolicy parseDelimitedFrom(InputStream input) throws IOException
      Throws:
      IOException
    • parseDelimitedFrom

      public static Policy.ListPolicy parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Policy.ListPolicy parseFrom(com.google.protobuf.CodedInputStream input) throws IOException
      Throws:
      IOException
    • parseFrom

      public static Policy.ListPolicy parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Throws:
      IOException
    • newBuilderForType

      public Policy.ListPolicy.Builder newBuilderForType()
      Specified by:
      newBuilderForType in interface com.google.protobuf.Message
      Specified by:
      newBuilderForType in interface com.google.protobuf.MessageLite
    • newBuilder

      public static Policy.ListPolicy.Builder newBuilder()
    • newBuilder

      public static Policy.ListPolicy.Builder newBuilder(Policy.ListPolicy prototype)
    • toBuilder

      public Policy.ListPolicy.Builder toBuilder()
      Specified by:
      toBuilder in interface com.google.protobuf.Message
      Specified by:
      toBuilder in interface com.google.protobuf.MessageLite
    • newBuilderForType

      protected Policy.ListPolicy.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent)
      Overrides:
      newBuilderForType in class com.google.protobuf.AbstractMessage
    • getDefaultInstance

      public static Policy.ListPolicy getDefaultInstance()
    • parser

      public static com.google.protobuf.Parser<Policy.ListPolicy> parser()
    • getParserForType

      public com.google.protobuf.Parser<Policy.ListPolicy> getParserForType()
      Specified by:
      getParserForType in interface com.google.protobuf.Message
      Specified by:
      getParserForType in interface com.google.protobuf.MessageLite
      Overrides:
      getParserForType in class com.google.protobuf.GeneratedMessage
    • getDefaultInstanceForType

      public Policy.ListPolicy getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder