Class: Comet::BucketUsageInfo

Inherits:
Object
  • Object
show all
Defined in:
lib/comet/models/bucket_usage_info.rb

Overview

BucketUsageInfo is a typed class wrapper around the underlying Comet Server API data structure.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBucketUsageInfo

Returns a new instance of BucketUsageInfo.



26
27
28
# File 'lib/comet/models/bucket_usage_info.rb', line 26

def initialize
  clear
end

Instance Attribute Details

#exists_on_serversObject

Returns the value of attribute exists_on_servers.



18
19
20
# File 'lib/comet/models/bucket_usage_info.rb', line 18

def exists_on_servers
  @exists_on_servers
end

#in_use_byObject

Returns the value of attribute in_use_by.



21
22
23
# File 'lib/comet/models/bucket_usage_info.rb', line 21

def in_use_by
  @in_use_by
end

#unknown_json_fieldsObject

Returns the value of attribute unknown_json_fields.



24
25
26
# File 'lib/comet/models/bucket_usage_info.rb', line 24

def unknown_json_fields
  @unknown_json_fields
end

Instance Method Details

#clearObject



30
31
32
33
34
# File 'lib/comet/models/bucket_usage_info.rb', line 30

def clear
  @exists_on_servers = []
  @in_use_by = []
  @unknown_json_fields = {}
end

#from_hash(obj) ⇒ Object

Parameters:

  • obj (Hash)

    The complete object as a Ruby hash



44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# File 'lib/comet/models/bucket_usage_info.rb', line 44

def from_hash(obj)
  raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash

  obj.each do |k, v|
    case k
    when 'ExistsOnServers'
      if v.nil?
        @exists_on_servers = []
      else
        @exists_on_servers = Array.new(v.length)
        v.each_with_index do |v1, i1|
          raise TypeError "'v1' expected Numeric, got #{v1.class}" unless v1.is_a? Numeric

          @exists_on_servers[i1] = v1
        end
      end
    when 'InUseBy'
      if v.nil?
        @in_use_by = []
      else
        @in_use_by = Array.new(v.length)
        v.each_with_index do |v1, i1|
          @in_use_by[i1] = Comet::UserOnServer.new
          @in_use_by[i1].from_hash(v1)
        end
      end
    else
      @unknown_json_fields[k] = v
    end
  end
end

#from_json(json_string) ⇒ Object

Parameters:

  • json_string (String)

    The complete object in JSON format



37
38
39
40
41
# File 'lib/comet/models/bucket_usage_info.rb', line 37

def from_json(json_string)
  raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String

  from_hash(JSON.parse(json_string))
end

#to_hHash

Returns The complete object as a Ruby hash.

Returns:

  • (Hash)

    The complete object as a Ruby hash



88
89
90
# File 'lib/comet/models/bucket_usage_info.rb', line 88

def to_h
  to_hash
end

#to_hashHash

Returns The complete object as a Ruby hash.

Returns:

  • (Hash)

    The complete object as a Ruby hash



77
78
79
80
81
82
83
84
85
# File 'lib/comet/models/bucket_usage_info.rb', line 77

def to_hash
  ret = {}
  ret['ExistsOnServers'] = @exists_on_servers
  ret['InUseBy'] = @in_use_by
  @unknown_json_fields.each do |k, v|
    ret[k] = v
  end
  ret
end

#to_json(options = {}) ⇒ String

Returns The complete object as a JSON string.

Returns:

  • (String)

    The complete object as a JSON string



93
94
95
# File 'lib/comet/models/bucket_usage_info.rb', line 93

def to_json(options = {})
  to_hash.to_json(options)
end