Sha256: a29efdd450ecdd3695147a9496b9b3b2995587ae7675aa76c01bb44423fcf1c5

Contents?: true

Size: 942 Bytes

Versions: 3

Compression:

Stored size: 942 Bytes

Contents

require 'source/database/students_db.rb'

module ShnaiderCode
    class StudentsListDB    
        private_class_method :new

        def self.get_student(id)
            Student.from_json(StudentsListDB.database.select_by_id(id))
        end

        def self.remove_student(id)
            StudentsListDB.database.remove_by_id(id)
        end

        def self.replace_student(id, student)
            StudentsListDB.database.replace_by_id(id, student.as_json)
        end

        def self.add_student(student)
            StudentsListDB.database.add_student(student.as_json)
        end

        def self.get_students_slice(from, to)
            StudentsListDB.database.select_students(from, to).map { |x| Student.from_json(x) }
        end

        def self.count()
            StudentsListDB.database.count()
        end

        def self.database
            @database ||= StudentsDB.new()
            @database
        end
    end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
shnaider_code-2.0.4 lib/source/database/students_list_db.rb
shnaider_code-2.0.3 lib/source/database/students_list_db.rb
shnaider_code-2.0.2 lib/source/database/students_list_db.rb