class CodebreakerRostik::Storage

Constants

PATH_TO_DB

Attributes

db_user[R]

Public Class Methods

new() click to toggle source
# File lib/storage.rb, line 6
def initialize
  @db_user = []
end

Public Instance Methods

add_data_to_db(user) click to toggle source
# File lib/storage.rb, line 10
def add_data_to_db(user)
  file_exist? ? add_data_to_old_info(user) : @db_user.push(user)
  write_to_db
end
add_data_to_old_info(user) click to toggle source
# File lib/storage.rb, line 15
def add_data_to_old_info(user)
  @db_user = load.push(user)
end
file_exist?() click to toggle source
# File lib/storage.rb, line 19
def file_exist?
  File.exist?(PATH_TO_DB)
end
load() click to toggle source
# File lib/storage.rb, line 27
def load
  YAML.load_file(PATH_TO_DB)
end
sort_db_info(data) click to toggle source
# File lib/storage.rb, line 23
def sort_db_info(data)
  data.sort_by { |user| [user[:attempts_total], user[:attempts_used], user[:hints_used]] }
end
write_to_db() click to toggle source
# File lib/storage.rb, line 31
def write_to_db
  db_file = File.open(PATH_TO_DB, 'w')
  db_file.write(@db_user.to_yaml)
  db_file.close
end