comet_backup_ruby_sdk 0.2.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +47 -0
  3. data/Gemfile.lock +43 -0
  4. data/README.md +20 -4
  5. data/RELEASING.md +10 -0
  6. data/comet_backup_ruby_sdk.gemspec +1 -1
  7. data/lib/comet/comet_server.rb +562 -254
  8. data/lib/comet/definitions.rb +19 -4
  9. data/lib/comet/models/add_bucket_response_message.rb +15 -5
  10. data/lib/comet/models/admin_account_properties_response.rb +17 -2
  11. data/lib/comet/models/admin_email_options.rb +84 -0
  12. data/lib/comet/models/admin_resource_response.rb +13 -4
  13. data/lib/comet/models/admin_security_options.rb +18 -5
  14. data/lib/comet/models/admin_u2fregistration.rb +11 -3
  15. data/lib/comet/models/admin_user_permissions.rb +6 -2
  16. data/lib/comet/models/available_download.rb +10 -4
  17. data/lib/comet/models/azure_destination_location.rb +16 -7
  18. data/lib/comet/models/b2destination_location.rb +17 -6
  19. data/lib/comet/models/b2storage_extra_info.rb +6 -2
  20. data/lib/comet/models/b2transaction_totals.rb +15 -2
  21. data/lib/comet/models/b2virtual_storage_role_settings.rb +93 -0
  22. data/lib/comet/models/backup_job_advanced_options.rb +12 -2
  23. data/lib/comet/models/backup_job_detail.rb +53 -10
  24. data/lib/comet/models/backup_job_progress.rb +21 -2
  25. data/lib/comet/models/backup_rule_config.rb +43 -7
  26. data/lib/comet/models/backup_rule_event_triggers.rb +6 -2
  27. data/lib/comet/models/branding_options.rb +59 -25
  28. data/lib/comet/models/branding_properties.rb +51 -21
  29. data/lib/comet/models/browse_disk_drives_response.rb +11 -3
  30. data/lib/comet/models/browse_edbresponse.rb +11 -3
  31. data/lib/comet/models/browse_hvresponse.rb +11 -3
  32. data/lib/comet/models/browse_vssresponse.rb +11 -3
  33. data/lib/comet/models/bucket_properties.rb +24 -3
  34. data/lib/comet/models/bucket_usage_info.rb +8 -2
  35. data/lib/comet/models/comet_apiresponse_message.rb +11 -3
  36. data/lib/comet/models/comet_destination_location.rb +12 -5
  37. data/lib/comet/models/constellation_check_report.rb +12 -2
  38. data/lib/comet/models/constellation_stats.rb +18 -2
  39. data/lib/comet/models/constellation_status_apiresponse.rb +9 -4
  40. data/lib/comet/models/content_measurement.rb +12 -2
  41. data/lib/comet/models/content_measurement_component.rb +10 -3
  42. data/lib/comet/models/create_group_policy_response.rb +13 -4
  43. data/lib/comet/models/default_email_report_policy.rb +6 -2
  44. data/lib/comet/models/destination_config.rb +123 -32
  45. data/lib/comet/models/destination_location.rb +78 -28
  46. data/lib/comet/models/destination_statistics.rb +16 -3
  47. data/lib/comet/models/device_config.rb +9 -3
  48. data/lib/comet/models/disk_drive.rb +34 -7
  49. data/lib/comet/models/dispatcher_admin_sources_response.rb +12 -4
  50. data/lib/comet/models/dispatcher_stored_objects_response.rb +11 -3
  51. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +11 -3
  52. data/lib/comet/models/edbfile_info.rb +12 -5
  53. data/lib/comet/models/email_options.rb +21 -8
  54. data/lib/comet/models/email_report_config.rb +10 -2
  55. data/lib/comet/models/email_report_generated_preview.rb +17 -6
  56. data/lib/comet/models/external_ldapauthentication_source_settings.rb +102 -0
  57. data/lib/comet/models/extra_file_exclusion.rb +11 -3
  58. data/lib/comet/models/ftpdestination_location.rb +23 -6
  59. data/lib/comet/models/get_group_policy_response.rb +14 -4
  60. data/lib/comet/models/get_profile_and_hash_response_message.rb +14 -4
  61. data/lib/comet/models/get_profile_hash_response_message.rb +13 -4
  62. data/lib/comet/models/group_policy.rb +18 -3
  63. data/lib/comet/models/hyper_vmachine_info.rb +10 -4
  64. data/lib/comet/models/install_creds.rb +99 -0
  65. data/lib/comet/models/install_token.rb +117 -0
  66. data/lib/comet/models/install_token_response.rb +92 -0
  67. data/lib/comet/models/job_entry.rb +93 -0
  68. data/lib/comet/models/live_user_connection.rb +20 -7
  69. data/lib/comet/models/local_destination_location.rb +15 -5
  70. data/lib/comet/models/mac_oscode_sign_properties.rb +21 -6
  71. data/lib/comet/models/mongo_dbconnection.rb +33 -14
  72. data/lib/comet/models/new_bucket_detail.rb +10 -4
  73. data/lib/comet/models/news_entry.rb +20 -3
  74. data/lib/comet/models/organization.rb +145 -0
  75. data/lib/comet/models/organization_response.rb +101 -0
  76. data/lib/comet/models/osinfo.rb +12 -5
  77. data/lib/comet/models/partition.rb +32 -8
  78. data/lib/comet/models/private_branding_properties.rb +39 -15
  79. data/lib/comet/models/protected_item_engine_type_policy.rb +7 -3
  80. data/lib/comet/models/public_branding_properties.rb +18 -8
  81. data/lib/comet/models/remote_server_address.rb +19 -7
  82. data/lib/comet/models/remote_storage_option.rb +28 -7
  83. data/lib/comet/models/replicator_state_apiresponse.rb +40 -4
  84. data/lib/comet/models/request_storage_vault_response_message.rb +13 -4
  85. data/lib/comet/models/restore_job_advanced_options.rb +15 -4
  86. data/lib/comet/models/retention_policy.rb +9 -2
  87. data/lib/comet/models/retention_range.rb +30 -2
  88. data/lib/comet/models/s3destination_location.rb +16 -7
  89. data/lib/comet/models/schedule_config.rb +15 -2
  90. data/lib/comet/models/search_clause.rb +14 -6
  91. data/lib/comet/models/server_config_options_branding_fragment.rb +7 -2
  92. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +7 -2
  93. data/lib/comet/models/server_meta_version_info.rb +45 -7
  94. data/lib/comet/models/session_key_regenerated_response.rb +15 -5
  95. data/lib/comet/models/sftpdestination_location.rb +21 -8
  96. data/lib/comet/models/size_measurement.rb +15 -2
  97. data/lib/comet/models/software_build_role_options.rb +6 -2
  98. data/lib/comet/models/software_update_news_response.rb +13 -6
  99. data/lib/comet/models/source_basic_info.rb +11 -3
  100. data/lib/comet/models/source_config.rb +38 -8
  101. data/lib/comet/models/source_statistics.rb +7 -2
  102. data/lib/comet/models/spanned_destination_location.rb +6 -2
  103. data/lib/comet/models/spanned_storage_extra_info.rb +6 -2
  104. data/lib/comet/models/sshconnection.rb +19 -7
  105. data/lib/comet/models/stat_result.rb +18 -2
  106. data/lib/comet/models/storage_free_space_info.rb +14 -2
  107. data/lib/comet/models/storage_vault_provider_policy.rb +8 -2
  108. data/lib/comet/models/stored_object.rb +27 -5
  109. data/lib/comet/models/streamable_event.rb +18 -2
  110. data/lib/comet/models/swift_destination_location.rb +32 -15
  111. data/lib/comet/models/test_response.rb +11 -3
  112. data/lib/comet/models/totp_regenerated_response.rb +17 -6
  113. data/lib/comet/models/u2fregister_request.rb +10 -4
  114. data/lib/comet/models/u2fregistered_key.rb +12 -5
  115. data/lib/comet/models/u2fregistration_challenge_response.rb +15 -5
  116. data/lib/comet/models/u2fsign_request.rb +12 -5
  117. data/lib/comet/models/u2fsign_response.rb +14 -6
  118. data/lib/comet/models/uninstall_config.rb +6 -2
  119. data/lib/comet/models/update_campaign_device_status.rb +9 -2
  120. data/lib/comet/models/update_campaign_options.rb +6 -2
  121. data/lib/comet/models/update_campaign_properties.rb +11 -3
  122. data/lib/comet/models/update_campaign_status.rb +11 -3
  123. data/lib/comet/models/update_campaign_status_device_entry.rb +13 -4
  124. data/lib/comet/models/user_custom_email_settings.rb +6 -2
  125. data/lib/comet/models/user_on_server.rb +11 -3
  126. data/lib/comet/models/user_policy.rb +22 -2
  127. data/lib/comet/models/user_profile_config.rb +52 -12
  128. data/lib/comet/models/user_profile_fragment.rb +8 -3
  129. data/lib/comet/models/vault_snapshot.rb +13 -4
  130. data/lib/comet/models/vsscomponent.rb +12 -5
  131. data/lib/comet/models/vsswriter_info.rb +8 -3
  132. data/lib/comet/models/wasabi_virtual_storage_role_settings.rb +93 -0
  133. data/lib/comet/models/web_interface_branding_properties.rb +14 -6
  134. data/lib/comet/models/webhook_option.rb +10 -3
  135. data/lib/comet/models/win_smbauth.rb +15 -5
  136. data/lib/comet/models/windows_code_sign_properties.rb +26 -9
  137. data/lib/comet_backup_ruby_sdk.rb +10 -0
  138. metadata +15 -2
@@ -30,34 +30,44 @@ module Comet
30
30
  attr_accessor :unknown_json_fields
31
31
 
32
32
  def initialize
33
+ clear
34
+ end
35
+
36
+ def clear
37
+ @status = 0
38
+ @message = ''
39
+ @session_key = ''
40
+ @session_type = ''
33
41
  @unknown_json_fields = {}
34
42
  end
35
43
 
36
44
  # @param [String] json_string The complete object in JSON format
37
45
  def from_json(json_string)
38
- raise TypeError 'expected string' unless json_string.is_a? String
46
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
39
47
 
40
48
  from_hash(JSON.parse(json_string))
41
49
  end
42
50
 
43
51
  # @param [Hash] obj The complete object as a Ruby hash
44
52
  def from_hash(obj)
45
- raise TypeError 'expected hash' unless obj.is_a? Hash
53
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
46
54
 
47
55
  obj.each do |k, v|
48
56
  case k
49
57
  when 'Status'
58
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
59
+
50
60
  @status = v
51
61
  when 'Message'
52
- raise TypeError 'expected string' unless v.is_a? String
62
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
53
63
 
54
64
  @message = v
55
65
  when 'SessionKey'
56
- raise TypeError 'expected string' unless v.is_a? String
66
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
57
67
 
58
68
  @session_key = v
59
69
  when 'SessionType'
60
- raise TypeError 'expected string' unless v.is_a? String
70
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
61
71
 
62
72
  @session_type = v
63
73
  else
@@ -42,48 +42,61 @@ module Comet
42
42
  attr_accessor :unknown_json_fields
43
43
 
44
44
  def initialize
45
+ clear
46
+ end
47
+
48
+ def clear
49
+ @sftpserver = ''
50
+ @sftpusername = ''
51
+ @sftpremote_path = ''
52
+ @sftpauth_mode = 0
53
+ @sftppassword = ''
54
+ @sftpprivate_key = ''
55
+ @sftpcustom_auth__known_hosts_file = ''
45
56
  @unknown_json_fields = {}
46
57
  end
47
58
 
48
59
  # @param [String] json_string The complete object in JSON format
49
60
  def from_json(json_string)
50
- raise TypeError 'expected string' unless json_string.is_a? String
61
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
51
62
 
52
63
  from_hash(JSON.parse(json_string))
53
64
  end
54
65
 
55
66
  # @param [Hash] obj The complete object as a Ruby hash
56
67
  def from_hash(obj)
57
- raise TypeError 'expected hash' unless obj.is_a? Hash
68
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
58
69
 
59
70
  obj.each do |k, v|
60
71
  case k
61
72
  when 'SFTPServer'
62
- raise TypeError 'expected string' unless v.is_a? String
73
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
63
74
 
64
75
  @sftpserver = v
65
76
  when 'SFTPUsername'
66
- raise TypeError 'expected string' unless v.is_a? String
77
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
67
78
 
68
79
  @sftpusername = v
69
80
  when 'SFTPRemotePath'
70
- raise TypeError 'expected string' unless v.is_a? String
81
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
71
82
 
72
83
  @sftpremote_path = v
73
84
  when 'SFTPAuthMode'
85
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
86
+
74
87
  @sftpauth_mode = v
75
88
  when 'SFTPPassword'
76
- raise TypeError 'expected string' unless v.is_a? String
89
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
77
90
 
78
91
  @sftppassword = v
79
92
  when 'SFTPPrivateKey'
80
- raise TypeError 'expected string' unless v.is_a? String
93
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
81
94
 
82
95
  @sftpprivate_key = v
83
96
  when 'SFTPCustomAuth_UseKnownHostsFile'
84
97
  @sftpcustom_auth__use_known_hosts_file = v
85
98
  when 'SFTPCustomAuth_KnownHostsFile'
86
- raise TypeError 'expected string' unless v.is_a? String
99
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
87
100
 
88
101
  @sftpcustom_auth__known_hosts_file = v
89
102
  else
@@ -27,27 +27,40 @@ module Comet
27
27
  attr_accessor :unknown_json_fields
28
28
 
29
29
  def initialize
30
+ clear
31
+ end
32
+
33
+ def clear
34
+ @size = 0
35
+ @measure_started = 0
36
+ @measure_completed = 0
30
37
  @unknown_json_fields = {}
31
38
  end
32
39
 
33
40
  # @param [String] json_string The complete object in JSON format
34
41
  def from_json(json_string)
35
- raise TypeError 'expected string' unless json_string.is_a? String
42
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
36
43
 
37
44
  from_hash(JSON.parse(json_string))
38
45
  end
39
46
 
40
47
  # @param [Hash] obj The complete object as a Ruby hash
41
48
  def from_hash(obj)
42
- raise TypeError 'expected hash' unless obj.is_a? Hash
49
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
43
50
 
44
51
  obj.each do |k, v|
45
52
  case k
46
53
  when 'Size'
54
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
55
+
47
56
  @size = v
48
57
  when 'MeasureStarted'
58
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
59
+
49
60
  @measure_started = v
50
61
  when 'MeasureCompleted'
62
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
63
+
51
64
  @measure_completed = v
52
65
  else
53
66
  @unknown_json_fields[k] = v
@@ -24,19 +24,23 @@ module Comet
24
24
  attr_accessor :unknown_json_fields
25
25
 
26
26
  def initialize
27
+ clear
28
+ end
29
+
30
+ def clear
27
31
  @unknown_json_fields = {}
28
32
  end
29
33
 
30
34
  # @param [String] json_string The complete object in JSON format
31
35
  def from_json(json_string)
32
- raise TypeError 'expected string' unless json_string.is_a? String
36
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
33
37
 
34
38
  from_hash(JSON.parse(json_string))
35
39
  end
36
40
 
37
41
  # @param [Hash] obj The complete object as a Ruby hash
38
42
  def from_hash(obj)
39
- raise TypeError 'expected hash' unless obj.is_a? Hash
43
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
40
44
 
41
45
  obj.each do |k, v|
42
46
  case k
@@ -30,33 +30,40 @@ module Comet
30
30
  attr_accessor :unknown_json_fields
31
31
 
32
32
  def initialize
33
+ clear
34
+ end
35
+
36
+ def clear
37
+ @latest_stable = ''
38
+ @latest_prerelease = ''
39
+ @downloads_url = ''
33
40
  @whats_new = []
34
41
  @unknown_json_fields = {}
35
42
  end
36
43
 
37
44
  # @param [String] json_string The complete object in JSON format
38
45
  def from_json(json_string)
39
- raise TypeError 'expected string' unless json_string.is_a? String
46
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
40
47
 
41
48
  from_hash(JSON.parse(json_string))
42
49
  end
43
50
 
44
51
  # @param [Hash] obj The complete object as a Ruby hash
45
52
  def from_hash(obj)
46
- raise TypeError 'expected hash' unless obj.is_a? Hash
53
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
47
54
 
48
55
  obj.each do |k, v|
49
56
  case k
50
57
  when 'latest_stable'
51
- raise TypeError 'expected string' unless v.is_a? String
58
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
52
59
 
53
60
  @latest_stable = v
54
61
  when 'latest_prerelease'
55
- raise TypeError 'expected string' unless v.is_a? String
62
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
56
63
 
57
64
  @latest_prerelease = v
58
65
  when 'downloads_url'
59
- raise TypeError 'expected string' unless v.is_a? String
66
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
60
67
 
61
68
  @downloads_url = v
62
69
  when 'updates_info'
@@ -65,7 +72,7 @@ module Comet
65
72
  else
66
73
  @whats_new = Array.new(v.length)
67
74
  v.each_with_index do |v1, i1|
68
- raise TypeError 'expected string' unless v1.is_a? String
75
+ raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
69
76
 
70
77
  @whats_new[i1] = v1
71
78
  end
@@ -27,28 +27,36 @@ module Comet
27
27
  attr_accessor :unknown_json_fields
28
28
 
29
29
  def initialize
30
+ clear
31
+ end
32
+
33
+ def clear
34
+ @description = ''
35
+ @size = 0
30
36
  @override_destination_retention = {}
31
37
  @unknown_json_fields = {}
32
38
  end
33
39
 
34
40
  # @param [String] json_string The complete object in JSON format
35
41
  def from_json(json_string)
36
- raise TypeError 'expected string' unless json_string.is_a? String
42
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
37
43
 
38
44
  from_hash(JSON.parse(json_string))
39
45
  end
40
46
 
41
47
  # @param [Hash] obj The complete object as a Ruby hash
42
48
  def from_hash(obj)
43
- raise TypeError 'expected hash' unless obj.is_a? Hash
49
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
44
50
 
45
51
  obj.each do |k, v|
46
52
  case k
47
53
  when 'Description'
48
- raise TypeError 'expected string' unless v.is_a? String
54
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
49
55
 
50
56
  @description = v
51
57
  when 'Size'
58
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
59
+
52
60
  @size = v
53
61
  when 'OverrideDestinationRetention'
54
62
  @override_destination_retention = {}
@@ -32,6 +32,9 @@ module Comet
32
32
  # @type [Array<String>] pre_exec
33
33
  attr_accessor :pre_exec
34
34
 
35
+ # @type [Array<String>] thaw_exec
36
+ attr_accessor :thaw_exec
37
+
35
38
  # @type [Array<String>] post_exec
36
39
  attr_accessor :post_exec
37
40
 
@@ -48,41 +51,56 @@ module Comet
48
51
  attr_accessor :unknown_json_fields
49
52
 
50
53
  def initialize
54
+ clear
55
+ end
56
+
57
+ def clear
58
+ @engine = ''
59
+ @description = ''
60
+ @owner_device = ''
61
+ @create_time = 0
62
+ @modify_time = 0
51
63
  @pre_exec = []
64
+ @thaw_exec = []
52
65
  @post_exec = []
53
66
  @engine_props = {}
54
67
  @override_destination_retention = {}
68
+ @statistics = Comet::SourceStatistics.new
55
69
  @unknown_json_fields = {}
56
70
  end
57
71
 
58
72
  # @param [String] json_string The complete object in JSON format
59
73
  def from_json(json_string)
60
- raise TypeError 'expected string' unless json_string.is_a? String
74
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
61
75
 
62
76
  from_hash(JSON.parse(json_string))
63
77
  end
64
78
 
65
79
  # @param [Hash] obj The complete object as a Ruby hash
66
80
  def from_hash(obj)
67
- raise TypeError 'expected hash' unless obj.is_a? Hash
81
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
68
82
 
69
83
  obj.each do |k, v|
70
84
  case k
71
85
  when 'Engine'
72
- raise TypeError 'expected string' unless v.is_a? String
86
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
73
87
 
74
88
  @engine = v
75
89
  when 'Description'
76
- raise TypeError 'expected string' unless v.is_a? String
90
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
77
91
 
78
92
  @description = v
79
93
  when 'OwnerDevice'
80
- raise TypeError 'expected string' unless v.is_a? String
94
+ raise TypeError "'v' expected String, got #{v.class}" unless v.is_a? String
81
95
 
82
96
  @owner_device = v
83
97
  when 'CreateTime'
98
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
99
+
84
100
  @create_time = v
85
101
  when 'ModifyTime'
102
+ raise TypeError "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric
103
+
86
104
  @modify_time = v
87
105
  when 'PreExec'
88
106
  if v.nil?
@@ -90,18 +108,29 @@ module Comet
90
108
  else
91
109
  @pre_exec = Array.new(v.length)
92
110
  v.each_with_index do |v1, i1|
93
- raise TypeError 'expected string' unless v1.is_a? String
111
+ raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
94
112
 
95
113
  @pre_exec[i1] = v1
96
114
  end
97
115
  end
116
+ when 'ThawExec'
117
+ if v.nil?
118
+ @thaw_exec = []
119
+ else
120
+ @thaw_exec = Array.new(v.length)
121
+ v.each_with_index do |v1, i1|
122
+ raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
123
+
124
+ @thaw_exec[i1] = v1
125
+ end
126
+ end
98
127
  when 'PostExec'
99
128
  if v.nil?
100
129
  @post_exec = []
101
130
  else
102
131
  @post_exec = Array.new(v.length)
103
132
  v.each_with_index do |v1, i1|
104
- raise TypeError 'expected string' unless v1.is_a? String
133
+ raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
105
134
 
106
135
  @post_exec[i1] = v1
107
136
  end
@@ -112,7 +141,7 @@ module Comet
112
141
  @engine_props = {}
113
142
  else
114
143
  v.each do |k1, v1|
115
- raise TypeError 'expected string' unless v1.is_a? String
144
+ raise TypeError "'v1' expected String, got #{v1.class}" unless v1.is_a? String
116
145
 
117
146
  @engine_props[k1] = v1
118
147
  end
@@ -145,6 +174,7 @@ module Comet
145
174
  ret['CreateTime'] = @create_time
146
175
  ret['ModifyTime'] = @modify_time
147
176
  ret['PreExec'] = @pre_exec
177
+ ret['ThawExec'] = @thaw_exec
148
178
  ret['PostExec'] = @post_exec
149
179
  ret['EngineProps'] = @engine_props
150
180
  unless @override_destination_retention.nil?
@@ -21,19 +21,24 @@ module Comet
21
21
  attr_accessor :unknown_json_fields
22
22
 
23
23
  def initialize
24
+ clear
25
+ end
26
+
27
+ def clear
28
+ @last_backup_job = Comet::BackupJobDetail.new
24
29
  @unknown_json_fields = {}
25
30
  end
26
31
 
27
32
  # @param [String] json_string The complete object in JSON format
28
33
  def from_json(json_string)
29
- raise TypeError 'expected string' unless json_string.is_a? String
34
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
30
35
 
31
36
  from_hash(JSON.parse(json_string))
32
37
  end
33
38
 
34
39
  # @param [Hash] obj The complete object as a Ruby hash
35
40
  def from_hash(obj)
36
- raise TypeError 'expected hash' unless obj.is_a? Hash
41
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
37
42
 
38
43
  obj.each do |k, v|
39
44
  case k
@@ -21,20 +21,24 @@ module Comet
21
21
  attr_accessor :unknown_json_fields
22
22
 
23
23
  def initialize
24
+ clear
25
+ end
26
+
27
+ def clear
24
28
  @span_targets = []
25
29
  @unknown_json_fields = {}
26
30
  end
27
31
 
28
32
  # @param [String] json_string The complete object in JSON format
29
33
  def from_json(json_string)
30
- raise TypeError 'expected string' unless json_string.is_a? String
34
+ raise TypeError "'json_string' expected String, got #{json_string.class}" unless json_string.is_a? String
31
35
 
32
36
  from_hash(JSON.parse(json_string))
33
37
  end
34
38
 
35
39
  # @param [Hash] obj The complete object as a Ruby hash
36
40
  def from_hash(obj)
37
- raise TypeError 'expected hash' unless obj.is_a? Hash
41
+ raise TypeError "'obj' expected Hash, got #{obj.class}" unless obj.is_a? Hash
38
42
 
39
43
  obj.each do |k, v|
40
44
  case k