Class: Comet::SelfBackupTarget
- Inherits:
-
Object
- Object
- Comet::SelfBackupTarget
- Defined in:
- lib/comet/models/self_backup_target.rb
Overview
SelfBackupTarget is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#compression ⇒ Object
One of the COMPRESS_LVL_ constants.
-
#encryption_key ⇒ Object
Returns the value of attribute encryption_key.
-
#encryption_key_format ⇒ Object
One of the ENCRYPTIONMETHOD_ constants.
-
#exclude_jobs_db ⇒ Object
The jobs database is often the largest component of the Server Self-Backup archive.
-
#include_server_logs ⇒ Object
Returns the value of attribute include_server_logs.
-
#index ⇒ Object
Returns the value of attribute index.
-
#location ⇒ Object
Returns the value of attribute location.
-
#restrict_to_single_org_id ⇒ Object
Returns the value of attribute restrict_to_single_org_id.
-
#retention_policy ⇒ Object
Returns the value of attribute retention_policy.
-
#schedule ⇒ Object
Returns the value of attribute schedule.
-
#schedule_timezone ⇒ Object
Timezone in IANA format.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ SelfBackupTarget
constructor
A new instance of SelfBackupTarget.
-
#to_h ⇒ Hash
The complete object as a Ruby hash.
-
#to_hash ⇒ Hash
The complete object as a Ruby hash.
-
#to_json(options = {}) ⇒ String
The complete object as a JSON string.
Constructor Details
#initialize ⇒ SelfBackupTarget
Returns a new instance of SelfBackupTarget.
56 57 58 |
# File 'lib/comet/models/self_backup_target.rb', line 56 def initialize clear end |
Instance Attribute Details
#compression ⇒ Object
One of the COMPRESS_LVL_ constants
37 38 39 |
# File 'lib/comet/models/self_backup_target.rb', line 37 def compression @compression end |
#encryption_key ⇒ Object
Returns the value of attribute encryption_key.
29 30 31 |
# File 'lib/comet/models/self_backup_target.rb', line 29 def encryption_key @encryption_key end |
#encryption_key_format ⇒ Object
One of the ENCRYPTIONMETHOD_ constants
33 34 35 |
# File 'lib/comet/models/self_backup_target.rb', line 33 def encryption_key_format @encryption_key_format end |
#exclude_jobs_db ⇒ Object
The jobs database is often the largest component of the Server Self-Backup archive. By excluding it, you could run the Server Self-Backup more often.
42 43 44 |
# File 'lib/comet/models/self_backup_target.rb', line 42 def exclude_jobs_db @exclude_jobs_db end |
#include_server_logs ⇒ Object
Returns the value of attribute include_server_logs.
45 46 47 |
# File 'lib/comet/models/self_backup_target.rb', line 45 def include_server_logs @include_server_logs end |
#index ⇒ Object
Returns the value of attribute index.
51 52 53 |
# File 'lib/comet/models/self_backup_target.rb', line 51 def index @index end |
#location ⇒ Object
Returns the value of attribute location.
26 27 28 |
# File 'lib/comet/models/self_backup_target.rb', line 26 def location @location end |
#restrict_to_single_org_id ⇒ Object
Returns the value of attribute restrict_to_single_org_id.
48 49 50 |
# File 'lib/comet/models/self_backup_target.rb', line 48 def restrict_to_single_org_id @restrict_to_single_org_id end |
#retention_policy ⇒ Object
Returns the value of attribute retention_policy.
23 24 25 |
# File 'lib/comet/models/self_backup_target.rb', line 23 def retention_policy @retention_policy end |
#schedule ⇒ Object
Returns the value of attribute schedule.
16 17 18 |
# File 'lib/comet/models/self_backup_target.rb', line 16 def schedule @schedule end |
#schedule_timezone ⇒ Object
Timezone in IANA format
20 21 22 |
# File 'lib/comet/models/self_backup_target.rb', line 20 def schedule_timezone @schedule_timezone end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
54 55 56 |
# File 'lib/comet/models/self_backup_target.rb', line 54 def unknown_json_fields @unknown_json_fields end |
Instance Method Details
#clear ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/comet/models/self_backup_target.rb', line 60 def clear @schedule = [] @schedule_timezone = '' @retention_policy = Comet::RetentionPolicy.new @location = Comet::DestinationLocation.new @encryption_key = '' @encryption_key_format = 0 @compression = 0 @restrict_to_single_org_id = '' @index = 0 @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 |
# File 'lib/comet/models/self_backup_target.rb', line 81 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 'Schedule' if v.nil? @schedule = [] else @schedule = Array.new(v.length) v.each_with_index do |v1, i1| @schedule[i1] = Comet::ScheduleConfig.new @schedule[i1].from_hash(v1) end end when 'ScheduleTimezone' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @schedule_timezone = v when 'RetentionPolicy' @retention_policy = Comet::RetentionPolicy.new @retention_policy.from_hash(v) when 'Location' @location = Comet::DestinationLocation.new @location.from_hash(v) when 'EncryptionKey' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @encryption_key = v when 'EncryptionKeyFormat' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @encryption_key_format = v when 'Compression' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @compression = v when 'ExcludeJobsDB' @exclude_jobs_db = v when 'IncludeServerLogs' @include_server_logs = v when 'RestrictToSingleOrgID' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @restrict_to_single_org_id = v when 'Index' raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric @index = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
74 75 76 77 78 |
# File 'lib/comet/models/self_backup_target.rb', line 74 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_h ⇒ Hash
Returns The complete object as a Ruby hash.
159 160 161 |
# File 'lib/comet/models/self_backup_target.rb', line 159 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 |
# File 'lib/comet/models/self_backup_target.rb', line 137 def to_hash ret = {} ret['Schedule'] = @schedule ret['ScheduleTimezone'] = @schedule_timezone ret['RetentionPolicy'] = @retention_policy ret['Location'] = @location ret['EncryptionKey'] = @encryption_key ret['EncryptionKeyFormat'] = @encryption_key_format ret['Compression'] = @compression ret['ExcludeJobsDB'] = @exclude_jobs_db ret['IncludeServerLogs'] = @include_server_logs unless @restrict_to_single_org_id.nil? ret['RestrictToSingleOrgID'] = @restrict_to_single_org_id end ret['Index'] = @index @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.
164 165 166 |
# File 'lib/comet/models/self_backup_target.rb', line 164 def to_json( = {}) to_hash.to_json() end |