Class: Comet::AmazonAWSVirtualStorageRoleSettings

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

Overview

AmazonAWSVirtualStorageRoleSettings is a typed class wrapper around the underlying Comet Server API data structure.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeAmazonAWSVirtualStorageRoleSettings

Returns a new instance of AmazonAWSVirtualStorageRoleSettings.



53
54
55
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 53

def initialize
  clear
end

Instance Attribute Details

#access_keyObject

Returns the value of attribute access_key.



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

def access_key
  @access_key
end

#master_bucketObject

If set, the Storage Template will generate Storage Vaults pointing to a subdirectory within this bucket. A single dynamic IAM policy will cover all created Storage Vaults. This is preferable for platforms that have limits on the total number of IAM policies. However, it requires a high level of IAM compatibility. If left blank, the Storage Template will generate Storage Vaults pointing to new, separate S3 buckets each time. An additional IAM policy is created for each new Storage Vault. This is preferable for platforms that have a lower level of IAM compatibility.



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

def master_bucket
  @master_bucket
end

#object_lock_daysObject

Returns the value of attribute object_lock_days.



41
42
43
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 41

def object_lock_days
  @object_lock_days
end

#object_lock_modeObject

Control whether the resulting Storage Vaults are configured for Object Lock. One of the OBJECT_LOCK_ constants



38
39
40
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 38

def object_lock_mode
  @object_lock_mode
end

#remove_deletedObject

Control whether the “Allow removal of deleted files” checkbox is enabled for Storage Vaults generated from this Storage Template. When configuring a Storage Template from the Comet Server web interface, this field is set automatically for Storage Templates using Object Lock.



48
49
50
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 48

def remove_deleted
  @remove_deleted
end

#secret_keyObject

Returns the value of attribute secret_key.



29
30
31
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 29

def secret_key
  @secret_key
end

#unknown_json_fieldsObject

Returns the value of attribute unknown_json_fields.



51
52
53
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 51

def unknown_json_fields
  @unknown_json_fields
end

#use_object_lock__legacy__do_not_useObject

Deprecated.

This member has been deprecated since Comet version 23.x.x



33
34
35
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 33

def use_object_lock__legacy__do_not_use
  @use_object_lock__legacy__do_not_use
end

Instance Method Details

#clearObject



57
58
59
60
61
62
63
64
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 57

def clear
  @master_bucket = ''
  @access_key = ''
  @secret_key = ''
  @object_lock_mode = 0
  @object_lock_days = 0
  @unknown_json_fields = {}
end

#from_hash(obj) ⇒ Object

Parameters:

  • obj (Hash)

    The complete object as a Ruby hash

Raises:

  • (TypeError)


74
75
76
77
78
79
80
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
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 74

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 'MasterBucket'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String

      @master_bucket = v
    when 'AccessKey'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String

      @access_key = v
    when 'SecretKey'
      raise TypeError, "'v' expected String, got #{v.class}" unless v.is_a? String

      @secret_key = v
    when 'UseObjectLock'
      @use_object_lock__legacy__do_not_use = v
    when 'ObjectLockMode'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @object_lock_mode = v
    when 'ObjectLockDays'
      raise TypeError, "'v' expected Numeric, got #{v.class}" unless v.is_a? Numeric

      @object_lock_days = v
    when 'RemoveDeleted'
      @remove_deleted = 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)


67
68
69
70
71
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 67

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



126
127
128
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 126

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



110
111
112
113
114
115
116
117
118
119
120
121
122
123
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 110

def to_hash
  ret = {}
  ret['MasterBucket'] = @master_bucket
  ret['AccessKey'] = @access_key
  ret['SecretKey'] = @secret_key
  ret['UseObjectLock'] = @use_object_lock__legacy__do_not_use
  ret['ObjectLockMode'] = @object_lock_mode
  ret['ObjectLockDays'] = @object_lock_days
  ret['RemoveDeleted'] = @remove_deleted
  @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



131
132
133
# File 'lib/comet/models/amazon_awsvirtual_storage_role_settings.rb', line 131

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