Class: MMS::Resource::Group
Instance Attribute Summary collapse
#client, #data, #id
Class Method Summary
collapse
Instance Method Summary
collapse
#_load, cache_key, find, #from_hash, #invalidate_cache, #to_hash
Constructor Details
#initialize ⇒ Group
Returns a new instance of Group.
11
12
13
14
|
# File 'lib/mms/resource/group.rb', line 11
def initialize
@clusters = []
@backup_configs = []
end
|
Instance Attribute Details
#active_agent_count ⇒ Object
Returns the value of attribute active_agent_count.
4
5
6
|
# File 'lib/mms/resource/group.rb', line 4
def active_agent_count
@active_agent_count
end
|
56
57
58
|
# File 'lib/mms/resource/group.rb', line 56
def clusters
@clusters
end
|
#last_active_agent ⇒ Object
Returns the value of attribute last_active_agent.
7
8
9
|
# File 'lib/mms/resource/group.rb', line 7
def last_active_agent
@last_active_agent
end
|
#name ⇒ Object
Returns the value of attribute name.
3
4
5
|
# File 'lib/mms/resource/group.rb', line 3
def name
@name
end
|
#replicaset_count ⇒ Object
Returns the value of attribute replicaset_count.
5
6
7
|
# File 'lib/mms/resource/group.rb', line 5
def replicaset_count
@replicaset_count
end
|
#shard_count ⇒ Object
Returns the value of attribute shard_count.
6
7
8
|
# File 'lib/mms/resource/group.rb', line 6
def shard_count
@shard_count
end
|
Class Method Details
._find(client, id) ⇒ Object
125
126
127
|
# File 'lib/mms/resource/group.rb', line 125
def self._find(client, id)
client.get('/groups/' + id)
end
|
121
122
123
|
# File 'lib/mms/resource/group.rb', line 121
def self.
['Name', 'Active Agents', 'Replicas count', 'Shards count', 'Last Active Agent', 'GroupId']
end
|
Instance Method Details
49
50
51
|
# File 'lib/mms/resource/group.rb', line 49
def alert(id)
MMS::Resource::Alert.find(@client, @id, id)
end
|
#alerts(page = 1, limit = 100, status = 'OPEN') ⇒ Array<MMS::Resource::Alert>
35
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/mms/resource/group.rb', line 35
def alerts(page = 1, limit = 100, status = 'OPEN')
alert_list = []
@client.get('/groups/' + @id + '/alerts?status=' + status + '&pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |alert|
a = MMS::Resource::Alert.new
a.client(@client)
a.data(alert)
alert_list.push a
end
alert_list
end
|
#backup_configs ⇒ Object
75
76
77
78
79
80
81
82
83
84
85
86
|
# File 'lib/mms/resource/group.rb', line 75
def backup_configs
if @backup_configs.empty?
@client.get('/groups/' + @id + '/backupConfigs').each do |backup_config|
bc = MMS::Resource::BackupConfig.new
bc.client(@client)
bc.data(backup_config)
@backup_configs.push bc
end
end
@backup_configs
end
|
71
72
73
|
# File 'lib/mms/resource/group.rb', line 71
def cluster(id)
MMS::Resource::Cluster.find(@client, @id, id)
end
|
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
# File 'lib/mms/resource/group.rb', line 90
def find_snapshot(id)
snapshot = nil
clusters.each do |cluster|
begin
snapshot = cluster.snapshot(id)
break unless snapshot.nil?
rescue MMS::ApiError => _e
end
end
if snapshot.nil?
hosts.each do |host|
begin
snapshot = host.snapshot(id)
break unless snapshot.nil?
rescue MMS::ApiError => _e
end
end
end
snapshot
end
|
#hosts(page = 1, limit = 100) ⇒ Array<MMS::Resource::Host>
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/mms/resource/group.rb', line 19
def hosts(page = 1, limit = 100)
host_list = []
@client.get('/groups/' + @id + '/hosts?pageNum=' + page.to_s + '&itemsPerPage=' + limit.to_s).each do |host|
h = MMS::Resource::Host.new
h.client(@client)
h.data(host)
host_list.push h
end
host_list
end
|
#table_row ⇒ Object
113
114
115
|
# File 'lib/mms/resource/group.rb', line 113
def table_row
[@name, @active_agent_count, @replicaset_count, @shard_count, @last_active_agent, @id]
end
|
#table_section ⇒ Object
117
118
119
|
# File 'lib/mms/resource/group.rb', line 117
def table_section
[table_row]
end
|