Class: Dag::ClusterCollection

Inherits:
Model
  • Object
show all
Includes:
Dag::Client::ClusterValidation, Enumerable
Defined in:
lib/dag/client/model/cluster_collection.rb

Constant Summary

Constants included from Dag::Client::ClusterValidation

Dag::Client::ClusterValidation::VALID_WHERE_KEYS

Instance Attribute Summary

Attributes inherited from Model

#api

Instance Method Summary collapse

Methods included from Dag::Client::ClusterValidation

#cluster_norm?, #cluster_norm_or_ptfailed?, #cluster_restart_status?, #cluster_status, #valid_cluster_info_list_status?, #valid_cluster_status?, #validate_cluster, #validate_cluster_param_keys

Constructor Details

#initialize(api) ⇒ ClusterCollection

Returns a new instance of ClusterCollection.



6
7
8
# File 'lib/dag/client/model/cluster_collection.rb', line 6

def initialize(api)
  super(api)
end

Instance Method Details

#eachObject



34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/dag/client/model/cluster_collection.rb', line 34

def each
  marker = nil
  truncated = false
  begin
    cluster_info_list = @api.cluster_info_list(make_options(marker))
    cluster_info_list['clusters'].each do |cluster_info|
      yield Dag::Cluster.new(@api, cluster_info)
    end
    truncated = cluster_info_list['isTruncated']
    marker = cluster_info_list['nextMarker']
  end while truncated
end

#order(o) ⇒ Object



23
24
25
26
27
28
29
30
31
32
# File 'lib/dag/client/model/cluster_collection.rb', line 23

def order(o)
  result = o.downcase.to_s
  unless ['asc', 'desc'].include?(result)
    raise Dag::Client::ParameterInvalid.new("Invalid order condition: #{o}")
  end

  @order = result

  self
end

#where(params) ⇒ Object

Parameters ==

status - ‘init’, ‘stopped’, restarting, ‘norm’, ‘failed’, ‘ptfailed’, ‘error’, ‘released’



13
14
15
16
17
18
19
20
21
# File 'lib/dag/client/model/cluster_collection.rb', line 13

def where(params)
  validate_cluster_param_keys(params)

  @status = params[:status] if params[:status]
  @type = params[:type] if params[:type]
  @cluster_name = params[:cluster_name] if params[:cluster_name].present?

  self
end