Class: Google::Storage::Data::BucketLifecycle

Inherits:
Object
  • Object
show all
Includes:
Comparable
Defined in:
lib/google/storage/property/bucket_lifecycle.rb

Overview

A class to manage data for Lifecycle for bucket.

Direct Known Subclasses

BucketLifecycleApi, BucketLifecycleCatalog

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#ruleObject (readonly)

Returns the value of attribute rule.



37
38
39
# File 'lib/google/storage/property/bucket_lifecycle.rb', line 37

def rule
  @rule
end

Instance Method Details

#<=>(other) ⇒ Object



62
63
64
65
66
67
68
69
70
# File 'lib/google/storage/property/bucket_lifecycle.rb', line 62

def <=>(other)
  return false unless other.is_a? BucketLifecycle
  compare_fields(other).each do |compare|
    next if compare[:self].nil? || compare[:other].nil?
    result = compare[:self] <=> compare[:other]
    return result unless result.zero?
  end
  0
end

#==(other) ⇒ Object



53
54
55
56
57
58
59
60
# File 'lib/google/storage/property/bucket_lifecycle.rb', line 53

def ==(other)
  return false unless other.is_a? BucketLifecycle
  compare_fields(other).each do |compare|
    next if compare[:self].nil? || compare[:other].nil?
    return false if compare[:self] != compare[:other]
  end
  true
end

#to_json(_arg = nil) ⇒ Object



39
40
41
42
43
# File 'lib/google/storage/property/bucket_lifecycle.rb', line 39

def to_json(_arg = nil)
  {
    'rule' => rule
  }.reject { |_k, v| v.nil? }.to_json
end

#to_sObject



45
46
47
48
49
50
51
# File 'lib/google/storage/property/bucket_lifecycle.rb', line 45

def to_s
  {
    rule: ['[',
           (rule || []).map(&:to_json).join(', '),
           ']'].join(' ')
  }.reject { |_k, v| v.nil? }.map { |k, v| "#{k}: #{v}" }.join(', ')
end