Class: Comet::ReplicaServer
- Inherits:
-
Object
- Object
- Comet::ReplicaServer
- Defined in:
- lib/comet/models/replica_server.rb
Overview
ReplicaServer is a typed class wrapper around the underlying Comet Server API data structure.
Instance Attribute Summary collapse
-
#aws ⇒ Object
Amazon AWS (Storage Template / Constellation).
-
#b2 ⇒ Object
Backblaze B2 (Storage Template / Constellation).
-
#custom ⇒ Object
Custom Remote Bucket HTTP protocol (Storage Template).
-
#description ⇒ Object
Returns the value of attribute description.
-
#imp_partner ⇒ Object
Impossible Cloud Partner API (Storage Template / Constellation).
-
#imp_user ⇒ Object
Impossible Cloud IAM API (Storage Template / Constellation).
-
#ldap ⇒ Object
Returns the value of attribute ldap.
-
#oidc ⇒ Object
Returns the value of attribute oidc.
-
#password ⇒ Object
For use with Comet Server (Storage Role / Auth Role).
-
#remote_address ⇒ Object
For use with Comet Server (Storage Role / Auth Role).
-
#replica_deletion_strategy ⇒ Object
Returns the value of attribute replica_deletion_strategy.
-
#s3 ⇒ Object
IDrive e2, or Custom IAM-compatible (Storage Template / Constellation).
-
#storj ⇒ Object
Storj (Storage Template / Constellation).
-
#type ⇒ Object
Returns the value of attribute type.
-
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
-
#username ⇒ Object
For use with Comet Server (Storage Role / Auth Role).
-
#wasabi ⇒ Object
Wasabi, or Comet Storage powered by Wasabi (Storage Template / Constellation).
Instance Method Summary collapse
- #clear ⇒ Object
- #from_hash(obj) ⇒ Object
- #from_json(json_string) ⇒ Object
-
#initialize ⇒ ReplicaServer
constructor
A new instance of ReplicaServer.
-
#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 ⇒ ReplicaServer
Returns a new instance of ReplicaServer.
77 78 79 |
# File 'lib/comet/models/replica_server.rb', line 77 def initialize clear end |
Instance Attribute Details
#aws ⇒ Object
Amazon AWS (Storage Template / Constellation)
57 58 59 |
# File 'lib/comet/models/replica_server.rb', line 57 def aws @aws end |
#b2 ⇒ Object
Backblaze B2 (Storage Template / Constellation)
41 42 43 |
# File 'lib/comet/models/replica_server.rb', line 41 def b2 @b2 end |
#custom ⇒ Object
Custom Remote Bucket HTTP protocol (Storage Template)
49 50 51 |
# File 'lib/comet/models/replica_server.rb', line 49 def custom @custom end |
#description ⇒ Object
Returns the value of attribute description.
19 20 21 |
# File 'lib/comet/models/replica_server.rb', line 19 def description @description end |
#imp_partner ⇒ Object
Impossible Cloud Partner API (Storage Template / Constellation)
65 66 67 |
# File 'lib/comet/models/replica_server.rb', line 65 def imp_partner @imp_partner end |
#imp_user ⇒ Object
Impossible Cloud IAM API (Storage Template / Constellation)
69 70 71 |
# File 'lib/comet/models/replica_server.rb', line 69 def imp_user @imp_user end |
#ldap ⇒ Object
Returns the value of attribute ldap.
34 35 36 |
# File 'lib/comet/models/replica_server.rb', line 34 def ldap @ldap end |
#oidc ⇒ Object
Returns the value of attribute oidc.
37 38 39 |
# File 'lib/comet/models/replica_server.rb', line 37 def oidc @oidc end |
#password ⇒ Object
For use with Comet Server (Storage Role / Auth Role)
31 32 33 |
# File 'lib/comet/models/replica_server.rb', line 31 def password @password end |
#remote_address ⇒ Object
For use with Comet Server (Storage Role / Auth Role)
23 24 25 |
# File 'lib/comet/models/replica_server.rb', line 23 def remote_address @remote_address end |
#replica_deletion_strategy ⇒ Object
Returns the value of attribute replica_deletion_strategy.
72 73 74 |
# File 'lib/comet/models/replica_server.rb', line 72 def replica_deletion_strategy @replica_deletion_strategy end |
#s3 ⇒ Object
IDrive e2, or Custom IAM-compatible (Storage Template / Constellation)
53 54 55 |
# File 'lib/comet/models/replica_server.rb', line 53 def s3 @s3 end |
#storj ⇒ Object
Storj (Storage Template / Constellation)
61 62 63 |
# File 'lib/comet/models/replica_server.rb', line 61 def storj @storj end |
#type ⇒ Object
Returns the value of attribute type.
16 17 18 |
# File 'lib/comet/models/replica_server.rb', line 16 def type @type end |
#unknown_json_fields ⇒ Object
Returns the value of attribute unknown_json_fields.
75 76 77 |
# File 'lib/comet/models/replica_server.rb', line 75 def unknown_json_fields @unknown_json_fields end |
#username ⇒ Object
For use with Comet Server (Storage Role / Auth Role)
27 28 29 |
# File 'lib/comet/models/replica_server.rb', line 27 def username @username end |
#wasabi ⇒ Object
Wasabi, or Comet Storage powered by Wasabi (Storage Template / Constellation)
45 46 47 |
# File 'lib/comet/models/replica_server.rb', line 45 def wasabi @wasabi end |
Instance Method Details
#clear ⇒ Object
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 |
# File 'lib/comet/models/replica_server.rb', line 81 def clear @type = '' @description = '' @remote_address = '' @username = '' @password = '' @ldap = Comet::ExternalLDAPAuthenticationSourceSettings.new @oidc = Comet::OidcConfig.new @b2 = Comet::B2VirtualStorageRoleSettings.new @wasabi = Comet::WasabiVirtualStorageRoleSettings.new @custom = Comet::CustomRemoteBucketSettings.new @s3 = Comet::S3GenericVirtualStorageRole.new @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new @storj = Comet::StorjVirtualStorageRoleSetting.new @imp_partner = Comet::ImpossibleCloudPartnerTemplateSettings.new @imp_user = Comet::ImpossibleCloudIAMTemplateSettings.new @replica_deletion_strategy = '' @unknown_json_fields = {} end |
#from_hash(obj) ⇒ Object
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 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 |
# File 'lib/comet/models/replica_server.rb', line 109 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 'Type' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @type = v when 'Description' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @description = v when 'RemoteAddress' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @remote_address = v when 'Username' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @username = v when 'Password' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @password = v when 'LDAP' @ldap = Comet::ExternalLDAPAuthenticationSourceSettings.new @ldap.from_hash(v) when 'OIDC' @oidc = Comet::OidcConfig.new @oidc.from_hash(v) when 'B2' @b2 = Comet::B2VirtualStorageRoleSettings.new @b2.from_hash(v) when 'Wasabi' @wasabi = Comet::WasabiVirtualStorageRoleSettings.new @wasabi.from_hash(v) when 'Custom' @custom = Comet::CustomRemoteBucketSettings.new @custom.from_hash(v) when 'S3' @s3 = Comet::S3GenericVirtualStorageRole.new @s3.from_hash(v) when 'AWS' @aws = Comet::AmazonAWSVirtualStorageRoleSettings.new @aws.from_hash(v) when 'Storj' @storj = Comet::StorjVirtualStorageRoleSetting.new @storj.from_hash(v) when 'ImpPartner' @imp_partner = Comet::ImpossibleCloudPartnerTemplateSettings.new @imp_partner.from_hash(v) when 'ImpUser' @imp_user = Comet::ImpossibleCloudIAMTemplateSettings.new @imp_user.from_hash(v) when 'ReplicaDeletionStrategy' raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String @replica_deletion_strategy = v else @unknown_json_fields[k] = v end end end |
#from_json(json_string) ⇒ Object
102 103 104 105 106 |
# File 'lib/comet/models/replica_server.rb', line 102 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.
228 229 230 |
# File 'lib/comet/models/replica_server.rb', line 228 def to_h to_hash end |
#to_hash ⇒ Hash
Returns The complete object as a Ruby hash.
175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 |
# File 'lib/comet/models/replica_server.rb', line 175 def to_hash ret = {} ret['Type'] = @type ret['Description'] = @description unless @remote_address.nil? ret['RemoteAddress'] = @remote_address end unless @username.nil? ret['Username'] = @username end unless @password.nil? ret['Password'] = @password end unless @ldap.nil? ret['LDAP'] = @ldap end unless @oidc.nil? ret['OIDC'] = @oidc end unless @b2.nil? ret['B2'] = @b2 end unless @wasabi.nil? ret['Wasabi'] = @wasabi end unless @custom.nil? ret['Custom'] = @custom end unless @s3.nil? ret['S3'] = @s3 end unless @aws.nil? ret['AWS'] = @aws end unless @storj.nil? ret['Storj'] = @storj end unless @imp_partner.nil? ret['ImpPartner'] = @imp_partner end unless @imp_user.nil? ret['ImpUser'] = @imp_user end unless @replica_deletion_strategy.nil? ret['ReplicaDeletionStrategy'] = @replica_deletion_strategy end @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.
233 234 235 |
# File 'lib/comet/models/replica_server.rb', line 233 def to_json( = {}) to_hash.to_json() end |