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.



492
493
494
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 492

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)


483
484
485
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 483

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)


490
491
492
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 490

def period
  @period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



497
498
499
500
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 497

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