Class: Google::Apis::PubsubliteV1::RetentionConfig

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/pubsublite_v1/classes.rb,
lib/google/apis/pubsublite_v1/representations.rb,
lib/google/apis/pubsublite_v1/representations.rb

Overview

The settings for a topic's message retention.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RetentionConfig

Returns a new instance of RetentionConfig.



735
736
737
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 735

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#per_partition_bytesFixnum

The provisioned storage, in bytes, per partition. If the number of bytes stored in any of the topic's partitions grows beyond this value, older messages will be dropped to make room for newer ones, regardless of the value of period. Corresponds to the JSON property perPartitionBytes

Returns:

  • (Fixnum)


726
727
728
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 726

def per_partition_bytes
  @per_partition_bytes
end

#periodString

How long a published message is retained. If unset, messages will be retained as long as the bytes retained for each partition is below per_partition_bytes . Corresponds to the JSON property period

Returns:

  • (String)


733
734
735
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 733

def period
  @period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



740
741
742
743
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 740

def update!(**args)
  @per_partition_bytes = args[:per_partition_bytes] if args.key?(:per_partition_bytes)
  @period = args[:period] if args.key?(:period)
end