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.



406
407
408
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 406

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)


397
398
399
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 397

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)


404
405
406
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 404

def period
  @period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



411
412
413
414
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 411

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