class Baza::Driver::Mysql::Users
Public Class Methods
new(args)
click to toggle source
# File lib/baza/driver/mysql/users.rb, line 4 def initialize(args) @args = args @db = @args.fetch(:db) end
Public Instance Methods
create(data)
click to toggle source
# File lib/baza/driver/mysql/users.rb, line 35 def create(data) @db.query("CREATE USER '#{@db.esc(data.fetch(:name))}'@'#{@db.esc(data.fetch(:host))}' IDENTIFIED BY '#{data.fetch(:password)}'") find_by_name(data.fetch(:name)) end
find_by_name(name)
click to toggle source
# File lib/baza/driver/mysql/users.rb, line 27 def find_by_name(name) list do |user| return user if user.name == name.to_s end raise Baza::Errors::UserNotFound, "Could not find a user by that name: #{name}" end
list() { |user| ... }
click to toggle source
# File lib/baza/driver/mysql/users.rb, line 9 def list result = [] @db.query("SELECT * FROM mysql.user") do |user_data| user = Baza::Driver::Mysql::User.new( db: @db, data: user_data ) if block_given? yield user else result << user end end result unless block_given? end