Sha256: fd4aac3a9a8063b6f1e6210c0d1ba358b29af6f65235a06ae7715ad03f7ab803

Contents?: true

Size: 946 Bytes

Versions: 2

Compression:

Stored size: 946 Bytes

Contents

# frozen_string_literal: true

##
# Репозиторий студентов с CRUD операциями.

class StudentRepository
  def initialize(data_source_adapter)
    @data_source_adapter = data_source_adapter
  end

  def student_by_id(student_id)
    @data_source_adapter.student_by_id(student_id)
  end

  ##
  # Получить page по счету count элементов (страница начинается с 1)

  def paginated_short_students(page, count, existing_data_list = nil)
    @data_source_adapter.paginated_short_students(page, count, existing_data_list)
  end

  def add_student(student)
    @data_source_adapter.add_student(student)
  end

  def replace_student(student_id, student)
    @data_source_adapter.replace_student(student_id, student)
  end

  def remove_student(student_id)
    @data_source_adapter.remove_student(student_id)
  end

  def student_count
    @data_source_adapter.student_count
  end
end

Version data entries

2 entries across 2 versions & 2 rubygems

Version Path
shnaider_code-1.1.5 lib/source/repositories/student_repository.rb
shaider-students-0.1.0 repositories/student_repository.rb