Class PolicySpec

  • All Implemented Interfaces:
    PolicySpecOrBuilder, com.google.protobuf.Message, com.google.protobuf.MessageLite, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Serializable

    public final class PolicySpec
    extends com.google.protobuf.GeneratedMessageV3
    implements PolicySpecOrBuilder
     Defines a Cloud Organization `PolicySpec` which is used to specify
     `Constraints` for configurations of Cloud Platform resources.
     
    Protobuf type google.cloud.orgpolicy.v2.PolicySpec
    See Also:
    Serialized Form
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  PolicySpec.Builder
      Defines a Cloud Organization `PolicySpec` which is used to specify `Constraints` for configurations of Cloud Platform resources.
      static class  PolicySpec.PolicyRule
      A rule used to express this policy.
      static interface  PolicySpec.PolicyRuleOrBuilder  
      • Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageV3

        com.google.protobuf.GeneratedMessageV3.BuilderParent, com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>,​BuilderT extends com.google.protobuf.GeneratedMessageV3.ExtendableBuilder<MessageT,​BuilderT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessageV3.FieldAccessorTable, com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter
      • Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite

        com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
    • Method Detail

      • newInstance

        protected Object newInstance​(com.google.protobuf.GeneratedMessageV3.UnusedPrivateParameter unused)
        Overrides:
        newInstance in class com.google.protobuf.GeneratedMessageV3
      • 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
      • getEtag

        public String getEtag()
         An opaque tag indicating the current version of the `Policy`, used for
         concurrency control.
        
         This field is ignored if used in a `CreatePolicy` request.
        
         When the `Policy` is returned from either a `GetPolicy` or a
         `ListPolicies` request, this `etag` indicates the version of the
         current `Policy` to use when executing a read-modify-write loop.
        
         When the `Policy` is returned from a `GetEffectivePolicy` request, the
         `etag` will be unset.
         
        string etag = 1;
        Specified by:
        getEtag in interface PolicySpecOrBuilder
        Returns:
        The etag.
      • getEtagBytes

        public com.google.protobuf.ByteString getEtagBytes()
         An opaque tag indicating the current version of the `Policy`, used for
         concurrency control.
        
         This field is ignored if used in a `CreatePolicy` request.
        
         When the `Policy` is returned from either a `GetPolicy` or a
         `ListPolicies` request, this `etag` indicates the version of the
         current `Policy` to use when executing a read-modify-write loop.
        
         When the `Policy` is returned from a `GetEffectivePolicy` request, the
         `etag` will be unset.
         
        string etag = 1;
        Specified by:
        getEtagBytes in interface PolicySpecOrBuilder
        Returns:
        The bytes for etag.
      • hasUpdateTime

        public boolean hasUpdateTime()
         Output only. The time stamp this was previously updated. This
         represents the last time a call to `CreatePolicy` or `UpdatePolicy` was
         made for that `Policy`.
         
        .google.protobuf.Timestamp update_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        hasUpdateTime in interface PolicySpecOrBuilder
        Returns:
        Whether the updateTime field is set.
      • getUpdateTime

        public com.google.protobuf.Timestamp getUpdateTime()
         Output only. The time stamp this was previously updated. This
         represents the last time a call to `CreatePolicy` or `UpdatePolicy` was
         made for that `Policy`.
         
        .google.protobuf.Timestamp update_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        getUpdateTime in interface PolicySpecOrBuilder
        Returns:
        The updateTime.
      • getUpdateTimeOrBuilder

        public com.google.protobuf.TimestampOrBuilder getUpdateTimeOrBuilder()
         Output only. The time stamp this was previously updated. This
         represents the last time a call to `CreatePolicy` or `UpdatePolicy` was
         made for that `Policy`.
         
        .google.protobuf.Timestamp update_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
        Specified by:
        getUpdateTimeOrBuilder in interface PolicySpecOrBuilder
      • getRulesList

        public List<PolicySpec.PolicyRule> getRulesList()
         Up to 10 PolicyRules are allowed.
        
         In Policies for boolean constraints, the following requirements apply:
           - There must be one and only one PolicyRule where condition is unset.
           - BooleanPolicyRules with conditions must set `enforced` to the opposite
             of the PolicyRule without a condition.
           - During policy evaluation, PolicyRules with conditions that are
             true for a target resource take precedence.
         
        repeated .google.cloud.orgpolicy.v2.PolicySpec.PolicyRule rules = 3;
        Specified by:
        getRulesList in interface PolicySpecOrBuilder
      • getRulesOrBuilderList

        public List<? extends PolicySpec.PolicyRuleOrBuilder> getRulesOrBuilderList()
         Up to 10 PolicyRules are allowed.
        
         In Policies for boolean constraints, the following requirements apply:
           - There must be one and only one PolicyRule where condition is unset.
           - BooleanPolicyRules with conditions must set `enforced` to the opposite
             of the PolicyRule without a condition.
           - During policy evaluation, PolicyRules with conditions that are
             true for a target resource take precedence.
         
        repeated .google.cloud.orgpolicy.v2.PolicySpec.PolicyRule rules = 3;
        Specified by:
        getRulesOrBuilderList in interface PolicySpecOrBuilder
      • getRulesCount

        public int getRulesCount()
         Up to 10 PolicyRules are allowed.
        
         In Policies for boolean constraints, the following requirements apply:
           - There must be one and only one PolicyRule where condition is unset.
           - BooleanPolicyRules with conditions must set `enforced` to the opposite
             of the PolicyRule without a condition.
           - During policy evaluation, PolicyRules with conditions that are
             true for a target resource take precedence.
         
        repeated .google.cloud.orgpolicy.v2.PolicySpec.PolicyRule rules = 3;
        Specified by:
        getRulesCount in interface PolicySpecOrBuilder
      • getRules

        public PolicySpec.PolicyRule getRules​(int index)
         Up to 10 PolicyRules are allowed.
        
         In Policies for boolean constraints, the following requirements apply:
           - There must be one and only one PolicyRule where condition is unset.
           - BooleanPolicyRules with conditions must set `enforced` to the opposite
             of the PolicyRule without a condition.
           - During policy evaluation, PolicyRules with conditions that are
             true for a target resource take precedence.
         
        repeated .google.cloud.orgpolicy.v2.PolicySpec.PolicyRule rules = 3;
        Specified by:
        getRules in interface PolicySpecOrBuilder
      • getRulesOrBuilder

        public PolicySpec.PolicyRuleOrBuilder getRulesOrBuilder​(int index)
         Up to 10 PolicyRules are allowed.
        
         In Policies for boolean constraints, the following requirements apply:
           - There must be one and only one PolicyRule where condition is unset.
           - BooleanPolicyRules with conditions must set `enforced` to the opposite
             of the PolicyRule without a condition.
           - During policy evaluation, PolicyRules with conditions that are
             true for a target resource take precedence.
         
        repeated .google.cloud.orgpolicy.v2.PolicySpec.PolicyRule rules = 3;
        Specified by:
        getRulesOrBuilder in interface PolicySpecOrBuilder
      • getInheritFromParent

        public boolean getInheritFromParent()
         Determines the inheritance behavior for this `Policy`.
        
         If `inherit_from_parent` is true, PolicyRules set higher up in the
         hierarchy (up to the closest root) are inherited and present in the
         effective policy. If it is false, then no rules are inherited, and this
         Policy becomes the new root for evaluation.
         This field can be set only for Policies which configure list constraints.
         
        bool inherit_from_parent = 4;
        Specified by:
        getInheritFromParent in interface PolicySpecOrBuilder
        Returns:
        The inheritFromParent.
      • getReset

        public boolean getReset()
         Ignores policies set above this resource and restores the
         `constraint_default` enforcement behavior of the specific `Constraint` at
         this resource.
         This field can be set in policies for either list or boolean
         constraints. If set, `rules` must be empty and `inherit_from_parent`
         must be set to false.
         
        bool reset = 5;
        Specified by:
        getReset in interface PolicySpecOrBuilder
        Returns:
        The reset.
      • isInitialized

        public final boolean isInitialized()
        Specified by:
        isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
        Overrides:
        isInitialized in class com.google.protobuf.GeneratedMessageV3
      • 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.GeneratedMessageV3
        Throws:
        IOException
      • getSerializedSize

        public int getSerializedSize()
        Specified by:
        getSerializedSize in interface com.google.protobuf.MessageLite
        Overrides:
        getSerializedSize in class com.google.protobuf.GeneratedMessageV3
      • 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 PolicySpec parseFrom​(ByteBuffer data)
                                    throws com.google.protobuf.InvalidProtocolBufferException
        Throws:
        com.google.protobuf.InvalidProtocolBufferException
      • parseFrom

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

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

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

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

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

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

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

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

        protected PolicySpec.Builder newBuilderForType​(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)
        Specified by:
        newBuilderForType in class com.google.protobuf.GeneratedMessageV3
      • getDefaultInstance

        public static PolicySpec getDefaultInstance()
      • parser

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

        public com.google.protobuf.Parser<PolicySpec> 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.GeneratedMessageV3
      • getDefaultInstanceForType

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