Class: Comet::UninstallConfig

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

Overview

UninstallConfig is a typed class wrapper around the underlying Comet Server API data structure. UninstallConfig allows configuring whether the target device will be uninstalled or not.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeUninstallConfig

Returns a new instance of UninstallConfig.



28
29
30
# File 'lib/comet/models/uninstall_config.rb', line 28

def initialize
  clear
end

Instance Attribute Details

#remove_config_fileObject

This controls the “Remove all user settings from this device” option.



23
24
25
# File 'lib/comet/models/uninstall_config.rb', line 23

def remove_config_file
  @remove_config_file
end

#uninstall_flagObject

If this option is true, the target device will receive a message asking it to uninstall the Comet Backup app.



19
20
21
# File 'lib/comet/models/uninstall_config.rb', line 19

def uninstall_flag
  @uninstall_flag
end

#unknown_json_fieldsObject

Returns the value of attribute unknown_json_fields.



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

def unknown_json_fields
  @unknown_json_fields
end

Instance Method Details

#clearObject



32
33
34
# File 'lib/comet/models/uninstall_config.rb', line 32

def clear
  @unknown_json_fields = {}
end

#from_hash(obj) ⇒ Object

Parameters:

  • obj (Hash)

    The complete object as a Ruby hash

Raises:

  • (TypeError)


44
45
46
47
48
49
50
51
52
53
54
55
56
57
# File 'lib/comet/models/uninstall_config.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 'UninstallFlag'
      @uninstall_flag = v
    when 'RemoveConfigFile'
      @remove_config_file = 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

Raises:

  • (TypeError)


37
38
39
40
41
# File 'lib/comet/models/uninstall_config.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



71
72
73
# File 'lib/comet/models/uninstall_config.rb', line 71

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



60
61
62
63
64
65
66
67
68
# File 'lib/comet/models/uninstall_config.rb', line 60

def to_hash
  ret = {}
  ret['UninstallFlag'] = @uninstall_flag
  ret['RemoveConfigFile'] = @remove_config_file
  @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



76
77
78
# File 'lib/comet/models/uninstall_config.rb', line 76

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