class Dag::DatabaseCollection

Attributes

cluster_name[R]

Public Class Methods

new(api, cluster_name, cluster_status: nil) click to toggle source
Calls superclass method Dag::Model::new
# File lib/dag/client/model/database_collection.rb, line 8
def initialize(api, cluster_name, cluster_status: nil)
  super(api)

  @cluster_name = cluster_name
  @cluster_status = cluster_status
end

Public Instance Methods

create(db_name) click to toggle source
# File lib/dag/client/model/database_collection.rb, line 25
def create(db_name)
  validate_cluster

  @api.create_database(@cluster_name, db_name)
  Dag::Database.new(@api, @cluster_name, db_name)
end
each() { |database| ... } click to toggle source
# File lib/dag/client/model/database_collection.rb, line 15
def each
  validate_cluster

  find_from_api unless find?

  @databases.each do |db_name|
    yield Dag::Database.new(@api, @cluster_name, db_name)
  end
end

Private Instance Methods

find?() click to toggle source
# File lib/dag/client/model/database_collection.rb, line 47
def find?
  @databases.present?
end
find_from_api() click to toggle source
# File lib/dag/client/model/database_collection.rb, line 34
def find_from_api
  dbs = []
  tmp = {}
  params = { "max" => 100 }
  begin
    params.merge!({"marker" => tmp["nextMarker"]}) rescue nil
    tmp = @api.database_list(@cluster_name , params: params)
    dbs += tmp["databases"]
  end while tmp["isTruncated"]

  @databases = dbs
end