Class: Comet::BackupJobProgress

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

Overview

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

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBackupJobProgress

Returns a new instance of BackupJobProgress.



35
36
37
# File 'lib/comet/models/backup_job_progress.rb', line 35

def initialize
  clear
end

Instance Attribute Details

#bytes_doneObject

Returns the value of attribute bytes_done.



27
28
29
# File 'lib/comet/models/backup_job_progress.rb', line 27

def bytes_done
  @bytes_done
end

#counterObject

Returns the value of attribute counter.



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

def counter
  @counter
end

#items_doneObject

Returns the value of attribute items_done.



30
31
32
# File 'lib/comet/models/backup_job_progress.rb', line 30

def items_done
  @items_done
end

#recieved_timeObject

Returns the value of attribute recieved_time.



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

def recieved_time
  @recieved_time
end

#sent_timeObject

Returns the value of attribute sent_time.



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

def sent_time
  @sent_time
end

#unknown_json_fieldsObject

Returns the value of attribute unknown_json_fields.



33
34
35
# File 'lib/comet/models/backup_job_progress.rb', line 33

def unknown_json_fields
  @unknown_json_fields
end

Instance Method Details

#clearObject



39
40
41
42
43
44
45
46
# File 'lib/comet/models/backup_job_progress.rb', line 39

def clear
  @counter = 0
  @sent_time = 0
  @recieved_time = 0
  @bytes_done = 0
  @items_done = 0
  @unknown_json_fields = {}
end

#from_hash(obj) ⇒ Object

Parameters:

  • obj (Hash)

    The complete object as a Ruby hash



56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# File 'lib/comet/models/backup_job_progress.rb', line 56

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 'Counter'
      raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @counter = v
    when 'SentTime'
      raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @sent_time = v
    when 'RecievedTime'
      raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @recieved_time = v
    when 'BytesDone'
      raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @bytes_done = v
    when 'ItemsDone'
      raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @items_done = v
    else
      @unknown_json_fields[k] = v
    end
  end
end

#from_json(json_string) ⇒ Object

Parameters:

  • json_string (String)

    The complete object in JSON format



49
50
51
52
53
# File 'lib/comet/models/backup_job_progress.rb', line 49

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



102
103
104
# File 'lib/comet/models/backup_job_progress.rb', line 102

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



88
89
90
91
92
93
94
95
96
97
98
99
# File 'lib/comet/models/backup_job_progress.rb', line 88

def to_hash
  ret = {}
  ret['Counter'] = @counter
  ret['SentTime'] = @sent_time
  ret['RecievedTime'] = @recieved_time
  ret['BytesDone'] = @bytes_done
  ret['ItemsDone'] = @items_done
  @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



107
108
109
# File 'lib/comet/models/backup_job_progress.rb', line 107

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