comet_backup_ruby_sdk 0.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 (130) hide show
  1. checksums.yaml +7 -0
  2. data/.rubocop.yml +25 -0
  3. data/Gemfile +15 -0
  4. data/LICENSE +7 -0
  5. data/README.md +81 -0
  6. data/Rakefile +22 -0
  7. data/comet_backup_ruby_sdk.gemspec +35 -0
  8. data/lib/comet/api_response_error.rb +27 -0
  9. data/lib/comet/comet_server.rb +2926 -0
  10. data/lib/comet/definitions.rb +550 -0
  11. data/lib/comet/models/add_bucket_response_message.rb +92 -0
  12. data/lib/comet/models/admin_account_properties_response.rb +76 -0
  13. data/lib/comet/models/admin_resource_response.rb +84 -0
  14. data/lib/comet/models/admin_security_options.rb +139 -0
  15. data/lib/comet/models/admin_u2fregistration.rb +84 -0
  16. data/lib/comet/models/admin_user_permissions.rb +102 -0
  17. data/lib/comet/models/available_download.rb +84 -0
  18. data/lib/comet/models/azure_destination_location.rb +102 -0
  19. data/lib/comet/models/b2destination_location.rb +110 -0
  20. data/lib/comet/models/b2storage_extra_info.rb +77 -0
  21. data/lib/comet/models/b2transaction_totals.rb +80 -0
  22. data/lib/comet/models/backup_job_advanced_options.rb +98 -0
  23. data/lib/comet/models/backup_job_detail.rb +199 -0
  24. data/lib/comet/models/backup_job_progress.rb +92 -0
  25. data/lib/comet/models/backup_rule_config.rb +188 -0
  26. data/lib/comet/models/backup_rule_event_triggers.rb +78 -0
  27. data/lib/comet/models/branding_options.rb +283 -0
  28. data/lib/comet/models/branding_properties.rb +245 -0
  29. data/lib/comet/models/browse_disk_drives_response.rb +91 -0
  30. data/lib/comet/models/browse_edbresponse.rb +91 -0
  31. data/lib/comet/models/browse_hvresponse.rb +91 -0
  32. data/lib/comet/models/browse_vssresponse.rb +91 -0
  33. data/lib/comet/models/bucket_properties.rb +89 -0
  34. data/lib/comet/models/bucket_usage_info.rb +91 -0
  35. data/lib/comet/models/comet_apiresponse_message.rb +76 -0
  36. data/lib/comet/models/comet_destination_location.rb +86 -0
  37. data/lib/comet/models/constellation_check_report.rb +89 -0
  38. data/lib/comet/models/constellation_stats.rb +86 -0
  39. data/lib/comet/models/constellation_status_apiresponse.rb +109 -0
  40. data/lib/comet/models/content_measurement.rb +89 -0
  41. data/lib/comet/models/content_measurement_component.rb +84 -0
  42. data/lib/comet/models/create_group_policy_response.rb +84 -0
  43. data/lib/comet/models/default_email_report_policy.rb +83 -0
  44. data/lib/comet/models/destination_config.rb +465 -0
  45. data/lib/comet/models/destination_location.rb +365 -0
  46. data/lib/comet/models/destination_statistics.rb +102 -0
  47. data/lib/comet/models/device_config.rb +96 -0
  48. data/lib/comet/models/disk_drive.rb +153 -0
  49. data/lib/comet/models/dispatcher_admin_sources_response.rb +92 -0
  50. data/lib/comet/models/dispatcher_stored_objects_response.rb +91 -0
  51. data/lib/comet/models/dispatcher_vault_snapshots_response.rb +91 -0
  52. data/lib/comet/models/edbfile_info.rb +92 -0
  53. data/lib/comet/models/email_options.rb +140 -0
  54. data/lib/comet/models/email_report_config.rb +90 -0
  55. data/lib/comet/models/email_report_generated_preview.rb +100 -0
  56. data/lib/comet/models/extra_file_exclusion.rb +82 -0
  57. data/lib/comet/models/ftpdestination_location.rb +124 -0
  58. data/lib/comet/models/get_group_policy_response.rb +91 -0
  59. data/lib/comet/models/get_profile_and_hash_response_message.rb +91 -0
  60. data/lib/comet/models/get_profile_hash_response_message.rb +84 -0
  61. data/lib/comet/models/group_policy.rb +83 -0
  62. data/lib/comet/models/hyper_vmachine_info.rb +78 -0
  63. data/lib/comet/models/live_user_connection.rb +125 -0
  64. data/lib/comet/models/local_destination_location.rb +92 -0
  65. data/lib/comet/models/mac_oscode_sign_properties.rb +113 -0
  66. data/lib/comet/models/mongo_dbconnection.rb +211 -0
  67. data/lib/comet/models/new_bucket_detail.rb +78 -0
  68. data/lib/comet/models/news_entry.rb +76 -0
  69. data/lib/comet/models/osinfo.rb +92 -0
  70. data/lib/comet/models/partition.rb +148 -0
  71. data/lib/comet/models/private_branding_properties.rb +185 -0
  72. data/lib/comet/models/protected_item_engine_type_policy.rb +84 -0
  73. data/lib/comet/models/public_branding_properties.rb +122 -0
  74. data/lib/comet/models/remote_server_address.rb +135 -0
  75. data/lib/comet/models/remote_storage_option.rb +147 -0
  76. data/lib/comet/models/replicator_state_apiresponse.rb +138 -0
  77. data/lib/comet/models/request_storage_vault_response_message.rb +84 -0
  78. data/lib/comet/models/restore_job_advanced_options.rb +104 -0
  79. data/lib/comet/models/retention_policy.rb +83 -0
  80. data/lib/comet/models/retention_range.rb +110 -0
  81. data/lib/comet/models/s3destination_location.rb +114 -0
  82. data/lib/comet/models/schedule_config.rb +82 -0
  83. data/lib/comet/models/search_clause.rb +111 -0
  84. data/lib/comet/models/server_config_options_branding_fragment.rb +69 -0
  85. data/lib/comet/models/server_config_options_software_build_role_fragment.rb +69 -0
  86. data/lib/comet/models/server_meta_version_info.rb +208 -0
  87. data/lib/comet/models/session_key_regenerated_response.rb +92 -0
  88. data/lib/comet/models/sftpdestination_location.rb +122 -0
  89. data/lib/comet/models/size_measurement.rb +80 -0
  90. data/lib/comet/models/software_build_role_options.rb +74 -0
  91. data/lib/comet/models/software_update_news_response.rb +102 -0
  92. data/lib/comet/models/source_basic_info.rb +93 -0
  93. data/lib/comet/models/source_config.rb +172 -0
  94. data/lib/comet/models/source_statistics.rb +69 -0
  95. data/lib/comet/models/spanned_destination_location.rb +77 -0
  96. data/lib/comet/models/spanned_storage_extra_info.rb +77 -0
  97. data/lib/comet/models/sshconnection.rb +114 -0
  98. data/lib/comet/models/stat_result.rb +86 -0
  99. data/lib/comet/models/storage_free_space_info.rb +98 -0
  100. data/lib/comet/models/storage_vault_provider_policy.rb +82 -0
  101. data/lib/comet/models/stored_object.rb +130 -0
  102. data/lib/comet/models/streamable_event.rb +74 -0
  103. data/lib/comet/models/swift_destination_location.rb +192 -0
  104. data/lib/comet/models/test_response.rb +82 -0
  105. data/lib/comet/models/totp_regenerated_response.rb +100 -0
  106. data/lib/comet/models/u2fregister_request.rb +78 -0
  107. data/lib/comet/models/u2fregistered_key.rb +86 -0
  108. data/lib/comet/models/u2fregistration_challenge_response.rb +122 -0
  109. data/lib/comet/models/u2fsign_request.rb +101 -0
  110. data/lib/comet/models/u2fsign_response.rb +94 -0
  111. data/lib/comet/models/uninstall_config.rb +74 -0
  112. data/lib/comet/models/update_campaign_device_status.rb +68 -0
  113. data/lib/comet/models/update_campaign_options.rb +86 -0
  114. data/lib/comet/models/update_campaign_properties.rb +100 -0
  115. data/lib/comet/models/update_campaign_status.rb +115 -0
  116. data/lib/comet/models/update_campaign_status_device_entry.rb +84 -0
  117. data/lib/comet/models/user_custom_email_settings.rb +77 -0
  118. data/lib/comet/models/user_on_server.rb +76 -0
  119. data/lib/comet/models/user_policy.rb +304 -0
  120. data/lib/comet/models/user_profile_config.rb +300 -0
  121. data/lib/comet/models/user_profile_fragment.rb +70 -0
  122. data/lib/comet/models/vault_snapshot.rb +84 -0
  123. data/lib/comet/models/vsscomponent.rb +92 -0
  124. data/lib/comet/models/vsswriter_info.rb +85 -0
  125. data/lib/comet/models/web_interface_branding_properties.rb +100 -0
  126. data/lib/comet/models/webhook_option.rb +84 -0
  127. data/lib/comet/models/win_smbauth.rb +92 -0
  128. data/lib/comet/models/windows_code_sign_properties.rb +130 -0
  129. data/lib/comet_backup_ruby_sdk.rb +130 -0
  130. metadata +227 -0
@@ -0,0 +1,188 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2020 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # BackupRuleConfig is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BackupRuleConfig
16
+
17
+ # @type [String] description
18
+ attr_accessor :description
19
+
20
+ # @type [Number] create_time
21
+ attr_accessor :create_time
22
+
23
+ # @type [Number] modify_time
24
+ attr_accessor :modify_time
25
+
26
+ # @type [Array<String>] pre_exec
27
+ attr_accessor :pre_exec
28
+
29
+ # @type [Array<String>] post_exec
30
+ attr_accessor :post_exec
31
+
32
+ # @type [String] source
33
+ attr_accessor :source
34
+
35
+ # @type [String] destination
36
+ attr_accessor :destination
37
+
38
+ # @type [Boolean] skip_already_running
39
+ attr_accessor :skip_already_running
40
+
41
+ # @type [Number] stop_after
42
+ attr_accessor :stop_after
43
+
44
+ # @type [Number] limit_vault_speed_bps
45
+ attr_accessor :limit_vault_speed_bps
46
+
47
+ # @type [Boolean] reduce_disk_concurrency
48
+ attr_accessor :reduce_disk_concurrency
49
+
50
+ # @type [Boolean] use_on_disk_indexes
51
+ attr_accessor :use_on_disk_indexes
52
+
53
+ # @type [Boolean] allow_zero_files_success
54
+ attr_accessor :allow_zero_files_success
55
+
56
+ # @type [Array<Comet::ScheduleConfig>] schedules
57
+ attr_accessor :schedules
58
+
59
+ # @type [Comet::BackupRuleEventTriggers] event_triggers
60
+ attr_accessor :event_triggers
61
+
62
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
63
+ attr_accessor :unknown_json_fields
64
+
65
+ def initialize
66
+ @pre_exec = []
67
+ @post_exec = []
68
+ @schedules = []
69
+ @unknown_json_fields = {}
70
+ end
71
+
72
+ # @param [String] json_string The complete object in JSON format
73
+ def from_json(json_string)
74
+ raise TypeError 'expected string' unless json_string.is_a? String
75
+
76
+ from_hash(JSON.parse(json_string))
77
+ end
78
+
79
+ # @param [Hash] obj The complete object as a Ruby hash
80
+ def from_hash(obj)
81
+ raise TypeError 'expected hash' unless obj.is_a? Hash
82
+
83
+ obj.each do |k, v|
84
+ case k
85
+ when 'Description'
86
+ raise TypeError 'expected string' unless v.is_a? String
87
+
88
+ @description = v
89
+ when 'CreateTime'
90
+ @create_time = v
91
+ when 'ModifyTime'
92
+ @modify_time = v
93
+ when 'PreExec'
94
+ if v.nil?
95
+ @pre_exec = []
96
+ else
97
+ @pre_exec = Array.new(v.length)
98
+ v.each_with_index do |v1, i1|
99
+ raise TypeError 'expected string' unless v1.is_a? String
100
+
101
+ @pre_exec[i1] = v1
102
+ end
103
+ end
104
+ when 'PostExec'
105
+ if v.nil?
106
+ @post_exec = []
107
+ else
108
+ @post_exec = Array.new(v.length)
109
+ v.each_with_index do |v1, i1|
110
+ raise TypeError 'expected string' unless v1.is_a? String
111
+
112
+ @post_exec[i1] = v1
113
+ end
114
+ end
115
+ when 'Source'
116
+ raise TypeError 'expected string' unless v.is_a? String
117
+
118
+ @source = v
119
+ when 'Destination'
120
+ raise TypeError 'expected string' unless v.is_a? String
121
+
122
+ @destination = v
123
+ when 'SkipAlreadyRunning'
124
+ @skip_already_running = v
125
+ when 'StopAfter'
126
+ @stop_after = v
127
+ when 'LimitVaultSpeedBps'
128
+ @limit_vault_speed_bps = v
129
+ when 'ReduceDiskConcurrency'
130
+ @reduce_disk_concurrency = v
131
+ when 'UseOnDiskIndexes'
132
+ @use_on_disk_indexes = v
133
+ when 'AllowZeroFilesSuccess'
134
+ @allow_zero_files_success = v
135
+ when 'Schedules'
136
+ if v.nil?
137
+ @schedules = []
138
+ else
139
+ @schedules = Array.new(v.length)
140
+ v.each_with_index do |v1, i1|
141
+ @schedules[i1] = Comet::ScheduleConfig.new
142
+ @schedules[i1].from_hash(v1)
143
+ end
144
+ end
145
+ when 'EventTriggers'
146
+ @event_triggers = Comet::BackupRuleEventTriggers.new
147
+ @event_triggers.from_hash(v)
148
+ else
149
+ @unknown_json_fields[k] = v
150
+ end
151
+ end
152
+ end
153
+
154
+ # @return [Hash] The complete object as a Ruby hash
155
+ def to_hash
156
+ ret = {}
157
+ ret['Description'] = @description
158
+ ret['CreateTime'] = @create_time
159
+ ret['ModifyTime'] = @modify_time
160
+ ret['PreExec'] = @pre_exec
161
+ ret['PostExec'] = @post_exec
162
+ ret['Source'] = @source
163
+ ret['Destination'] = @destination
164
+ ret['SkipAlreadyRunning'] = @skip_already_running
165
+ ret['StopAfter'] = @stop_after
166
+ ret['LimitVaultSpeedBps'] = @limit_vault_speed_bps
167
+ ret['ReduceDiskConcurrency'] = @reduce_disk_concurrency
168
+ ret['UseOnDiskIndexes'] = @use_on_disk_indexes
169
+ ret['AllowZeroFilesSuccess'] = @allow_zero_files_success
170
+ ret['Schedules'] = @schedules
171
+ ret['EventTriggers'] = @event_triggers
172
+ @unknown_json_fields.each do |k, v|
173
+ ret[k] = v
174
+ end
175
+ ret
176
+ end
177
+
178
+ # @return [Hash] The complete object as a Ruby hash
179
+ def to_h
180
+ to_hash
181
+ end
182
+
183
+ # @return [String] The complete object as a JSON string
184
+ def to_json(options = {})
185
+ to_hash.to_json(options)
186
+ end
187
+ end
188
+ end
@@ -0,0 +1,78 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2020 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # BackupRuleEventTriggers is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BackupRuleEventTriggers
16
+
17
+ # @type [Boolean] on_pcboot
18
+ attr_accessor :on_pcboot
19
+
20
+ # @type [Boolean] on_pcboot_if_last_job_missed
21
+ attr_accessor :on_pcboot_if_last_job_missed
22
+
23
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
24
+ attr_accessor :unknown_json_fields
25
+
26
+ def initialize
27
+ @unknown_json_fields = {}
28
+ end
29
+
30
+ # @param [String] json_string The complete object in JSON format
31
+ def from_json(json_string)
32
+ raise TypeError 'expected string' unless json_string.is_a? String
33
+
34
+ from_hash(JSON.parse(json_string))
35
+ end
36
+
37
+ # @param [Hash] obj The complete object as a Ruby hash
38
+ def from_hash(obj)
39
+ raise TypeError 'expected hash' unless obj.is_a? Hash
40
+
41
+ obj.each do |k, v|
42
+ case k
43
+ when 'OnPCBoot'
44
+ @on_pcboot = v
45
+ when 'OnPCBootIfLastJobMissed'
46
+ @on_pcboot_if_last_job_missed = v
47
+ else
48
+ @unknown_json_fields[k] = v
49
+ end
50
+ end
51
+ end
52
+
53
+ # @return [Hash] The complete object as a Ruby hash
54
+ def to_hash
55
+ ret = {}
56
+ unless @on_pcboot.nil?
57
+ ret['OnPCBoot'] = @on_pcboot
58
+ end
59
+ unless @on_pcboot_if_last_job_missed.nil?
60
+ ret['OnPCBootIfLastJobMissed'] = @on_pcboot_if_last_job_missed
61
+ end
62
+ @unknown_json_fields.each do |k, v|
63
+ ret[k] = v
64
+ end
65
+ ret
66
+ end
67
+
68
+ # @return [Hash] The complete object as a Ruby hash
69
+ def to_h
70
+ to_hash
71
+ end
72
+
73
+ # @return [String] The complete object as a JSON string
74
+ def to_json(options = {})
75
+ to_hash.to_json(options)
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,283 @@
1
+ #!/usr/bin/env ruby --enable-frozen-string-literal
2
+ #
3
+ # Copyright (c) 2020-2020 Comet Licensing Ltd.
4
+ # Please see the LICENSE file for usage information.
5
+ #
6
+ # SPDX-License-Identifier: MIT
7
+ #
8
+ # frozen_string_literal: true
9
+
10
+ require 'json'
11
+
12
+ module Comet
13
+
14
+ # BrandingOptions is a typed class wrapper around the underlying Comet Server API data structure.
15
+ class BrandingOptions
16
+
17
+ # @type [String] brand_name
18
+ attr_accessor :brand_name
19
+
20
+ # @type [String] logo_image
21
+ attr_accessor :logo_image
22
+
23
+ # @type [String] top_color
24
+ attr_accessor :top_color
25
+
26
+ # @type [String] favicon
27
+ attr_accessor :favicon
28
+
29
+ # @type [Boolean] hide_news_area
30
+ attr_accessor :hide_news_area
31
+
32
+ # @type [String] product_name
33
+ attr_accessor :product_name
34
+
35
+ # @type [String] company_name
36
+ attr_accessor :company_name
37
+
38
+ # @type [String] help_url
39
+ attr_accessor :help_url
40
+
41
+ # @type [Boolean] help_is_popup
42
+ attr_accessor :help_is_popup
43
+
44
+ # @type [String] default_login_server_url
45
+ attr_accessor :default_login_server_url
46
+
47
+ # @type [String] tile_background_color
48
+ attr_accessor :tile_background_color
49
+
50
+ # @type [String] account_register_url
51
+ attr_accessor :account_register_url
52
+
53
+ # @type [Boolean] hide_background_logo
54
+ attr_accessor :hide_background_logo
55
+
56
+ # @type [String] path_ico_file
57
+ attr_accessor :path_ico_file
58
+
59
+ # @type [String] path_icns_file
60
+ attr_accessor :path_icns_file
61
+
62
+ # @type [String] path_eula_rtf
63
+ attr_accessor :path_eula_rtf
64
+
65
+ # @type [String] path_tile_png
66
+ attr_accessor :path_tile_png
67
+
68
+ # @type [String] path_header_image
69
+ attr_accessor :path_header_image
70
+
71
+ # @type [String] package_identifier
72
+ attr_accessor :package_identifier
73
+
74
+ # @type [String] windows_code_sign_pkcs12file_path
75
+ attr_accessor :windows_code_sign_pkcs12file_path
76
+
77
+ # @type [Number] windows_code_sign_pkcs12password_format
78
+ attr_accessor :windows_code_sign_pkcs12password_format
79
+
80
+ # @type [String] windows_code_sign_pkcs12password
81
+ attr_accessor :windows_code_sign_pkcs12password
82
+
83
+ # @type [String] windows_code_sign_pkcs11engine
84
+ attr_accessor :windows_code_sign_pkcs11engine
85
+
86
+ # @type [String] windows_code_sign_pkcs11module
87
+ attr_accessor :windows_code_sign_pkcs11module
88
+
89
+ # @type [String] windows_code_sign_pkcs11certfile
90
+ attr_accessor :windows_code_sign_pkcs11certfile
91
+
92
+ # @type [String] windows_code_sign_pkcs11key_id
93
+ attr_accessor :windows_code_sign_pkcs11key_id
94
+
95
+ # @type [Number] windows_code_sign_pkcs11password_format
96
+ attr_accessor :windows_code_sign_pkcs11password_format
97
+
98
+ # @type [String] windows_code_sign_pkcs11password
99
+ attr_accessor :windows_code_sign_pkcs11password
100
+
101
+ # @type [Comet::MacOSCodeSignProperties] mac_oscode_sign
102
+ attr_accessor :mac_oscode_sign
103
+
104
+ # @type [Hash] Hidden storage to preserve future properties for non-destructive roundtrip operations
105
+ attr_accessor :unknown_json_fields
106
+
107
+ def initialize
108
+ @unknown_json_fields = {}
109
+ end
110
+
111
+ # @param [String] json_string The complete object in JSON format
112
+ def from_json(json_string)
113
+ raise TypeError 'expected string' unless json_string.is_a? String
114
+
115
+ from_hash(JSON.parse(json_string))
116
+ end
117
+
118
+ # @param [Hash] obj The complete object as a Ruby hash
119
+ def from_hash(obj)
120
+ raise TypeError 'expected hash' unless obj.is_a? Hash
121
+
122
+ obj.each do |k, v|
123
+ case k
124
+ when 'BrandName'
125
+ raise TypeError 'expected string' unless v.is_a? String
126
+
127
+ @brand_name = v
128
+ when 'LogoImage'
129
+ raise TypeError 'expected string' unless v.is_a? String
130
+
131
+ @logo_image = v
132
+ when 'TopColor'
133
+ raise TypeError 'expected string' unless v.is_a? String
134
+
135
+ @top_color = v
136
+ when 'Favicon'
137
+ raise TypeError 'expected string' unless v.is_a? String
138
+
139
+ @favicon = v
140
+ when 'HideNewsArea'
141
+ @hide_news_area = v
142
+ when 'ProductName'
143
+ raise TypeError 'expected string' unless v.is_a? String
144
+
145
+ @product_name = v
146
+ when 'CompanyName'
147
+ raise TypeError 'expected string' unless v.is_a? String
148
+
149
+ @company_name = v
150
+ when 'HelpURL'
151
+ raise TypeError 'expected string' unless v.is_a? String
152
+
153
+ @help_url = v
154
+ when 'HelpIsPopup'
155
+ @help_is_popup = v
156
+ when 'DefaultLoginServerURL'
157
+ raise TypeError 'expected string' unless v.is_a? String
158
+
159
+ @default_login_server_url = v
160
+ when 'TileBackgroundColor'
161
+ raise TypeError 'expected string' unless v.is_a? String
162
+
163
+ @tile_background_color = v
164
+ when 'AccountRegisterURL'
165
+ raise TypeError 'expected string' unless v.is_a? String
166
+
167
+ @account_register_url = v
168
+ when 'HideBackgroundLogo'
169
+ @hide_background_logo = v
170
+ when 'PathIcoFile'
171
+ raise TypeError 'expected string' unless v.is_a? String
172
+
173
+ @path_ico_file = v
174
+ when 'PathIcnsFile'
175
+ raise TypeError 'expected string' unless v.is_a? String
176
+
177
+ @path_icns_file = v
178
+ when 'PathEulaRtf'
179
+ raise TypeError 'expected string' unless v.is_a? String
180
+
181
+ @path_eula_rtf = v
182
+ when 'PathTilePng'
183
+ raise TypeError 'expected string' unless v.is_a? String
184
+
185
+ @path_tile_png = v
186
+ when 'PathHeaderImage'
187
+ raise TypeError 'expected string' unless v.is_a? String
188
+
189
+ @path_header_image = v
190
+ when 'PackageIdentifier'
191
+ raise TypeError 'expected string' unless v.is_a? String
192
+
193
+ @package_identifier = v
194
+ when 'WindowsCodeSignPKCS12FilePath'
195
+ raise TypeError 'expected string' unless v.is_a? String
196
+
197
+ @windows_code_sign_pkcs12file_path = v
198
+ when 'WindowsCodeSignPKCS12PasswordFormat'
199
+ @windows_code_sign_pkcs12password_format = v
200
+ when 'WindowsCodeSignPKCS12Password'
201
+ raise TypeError 'expected string' unless v.is_a? String
202
+
203
+ @windows_code_sign_pkcs12password = v
204
+ when 'WindowsCodeSignPKCS11Engine'
205
+ raise TypeError 'expected string' unless v.is_a? String
206
+
207
+ @windows_code_sign_pkcs11engine = v
208
+ when 'WindowsCodeSignPKCS11Module'
209
+ raise TypeError 'expected string' unless v.is_a? String
210
+
211
+ @windows_code_sign_pkcs11module = v
212
+ when 'WindowsCodeSignPKCS11Certfile'
213
+ raise TypeError 'expected string' unless v.is_a? String
214
+
215
+ @windows_code_sign_pkcs11certfile = v
216
+ when 'WindowsCodeSignPKCS11KeyID'
217
+ raise TypeError 'expected string' unless v.is_a? String
218
+
219
+ @windows_code_sign_pkcs11key_id = v
220
+ when 'WindowsCodeSignPKCS11PasswordFormat'
221
+ @windows_code_sign_pkcs11password_format = v
222
+ when 'WindowsCodeSignPKCS11Password'
223
+ raise TypeError 'expected string' unless v.is_a? String
224
+
225
+ @windows_code_sign_pkcs11password = v
226
+ when 'MacOSCodeSign'
227
+ @mac_oscode_sign = Comet::MacOSCodeSignProperties.new
228
+ @mac_oscode_sign.from_hash(v)
229
+ else
230
+ @unknown_json_fields[k] = v
231
+ end
232
+ end
233
+ end
234
+
235
+ # @return [Hash] The complete object as a Ruby hash
236
+ def to_hash
237
+ ret = {}
238
+ ret['BrandName'] = @brand_name
239
+ ret['LogoImage'] = @logo_image
240
+ ret['TopColor'] = @top_color
241
+ ret['Favicon'] = @favicon
242
+ ret['HideNewsArea'] = @hide_news_area
243
+ ret['ProductName'] = @product_name
244
+ ret['CompanyName'] = @company_name
245
+ ret['HelpURL'] = @help_url
246
+ ret['HelpIsPopup'] = @help_is_popup
247
+ ret['DefaultLoginServerURL'] = @default_login_server_url
248
+ ret['TileBackgroundColor'] = @tile_background_color
249
+ ret['AccountRegisterURL'] = @account_register_url
250
+ ret['HideBackgroundLogo'] = @hide_background_logo
251
+ ret['PathIcoFile'] = @path_ico_file
252
+ ret['PathIcnsFile'] = @path_icns_file
253
+ ret['PathEulaRtf'] = @path_eula_rtf
254
+ ret['PathTilePng'] = @path_tile_png
255
+ ret['PathHeaderImage'] = @path_header_image
256
+ ret['PackageIdentifier'] = @package_identifier
257
+ ret['WindowsCodeSignPKCS12FilePath'] = @windows_code_sign_pkcs12file_path
258
+ ret['WindowsCodeSignPKCS12PasswordFormat'] = @windows_code_sign_pkcs12password_format
259
+ ret['WindowsCodeSignPKCS12Password'] = @windows_code_sign_pkcs12password
260
+ ret['WindowsCodeSignPKCS11Engine'] = @windows_code_sign_pkcs11engine
261
+ ret['WindowsCodeSignPKCS11Module'] = @windows_code_sign_pkcs11module
262
+ ret['WindowsCodeSignPKCS11Certfile'] = @windows_code_sign_pkcs11certfile
263
+ ret['WindowsCodeSignPKCS11KeyID'] = @windows_code_sign_pkcs11key_id
264
+ ret['WindowsCodeSignPKCS11PasswordFormat'] = @windows_code_sign_pkcs11password_format
265
+ ret['WindowsCodeSignPKCS11Password'] = @windows_code_sign_pkcs11password
266
+ ret['MacOSCodeSign'] = @mac_oscode_sign
267
+ @unknown_json_fields.each do |k, v|
268
+ ret[k] = v
269
+ end
270
+ ret
271
+ end
272
+
273
+ # @return [Hash] The complete object as a Ruby hash
274
+ def to_h
275
+ to_hash
276
+ end
277
+
278
+ # @return [String] The complete object as a JSON string
279
+ def to_json(options = {})
280
+ to_hash.to_json(options)
281
+ end
282
+ end
283
+ end