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.



800
801
802
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 800

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)


791
792
793
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 791

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)


798
799
800
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 798

def period
  @period
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



805
806
807
808
# File 'lib/google/apis/pubsublite_v1/classes.rb', line 805

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