postgres

package
v0.0.0-...-c8e5cf1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 24, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Storage

type Storage struct {
	// contains filtered or unexported fields
}

func New

func New(ctx context.Context, cfg config.Storage) (*Storage, error)

New создает и возвращает пул соединений к базе данных PostgreSQL. Функция принимает контекст и конфигурацию хранилища. Возвращает объект Storage с инициализированным пулом соединений и возможную ошибку.

Процесс работы функции:

  • Парсит URL подключения из конфигурации.
  • Настраивает параметры пула соединений.
  • Создает пул соединений с заданной конфигурацией.
  • Выполняет пинг базы данных для проверки соединения.
  • Возвращает объект Storage с инициализированным пулом.

func (*Storage) AddClient

func (s *Storage) AddClient(ctx context.Context, p api.Client) (*models.Client, error)

AddClient создаёт нового клиента и первоначальный статус. Возвращает объект Client и возможную ошибку.

func (*Storage) DeleteClient

func (s *Storage) DeleteClient(ctx context.Context, id int) (*models.Status, error)

DeleteClient удаляет клиента. Возвращает соответствующий статус и возможную ошибку.

func (*Storage) Stop

func (s *Storage) Stop()

Stop закрывает все соединения в пуле и отклоняет новые запросы. Блокируется до закрытия всех соединений.

func (*Storage) UpdateClient

func (s *Storage) UpdateClient(ctx context.Context, id int, p api.Client) error

UpdateClient обновляет данные клиента. Возвращает возможную ошибку и статус, если требуется перезагрузка.

func (*Storage) UpdateStatus

func (s *Storage) UpdateStatus(ctx context.Context, id int, p api.Status) (*models.Status, error)

UpdateStatus обновляет статус. Возвразает предыдущий статус и возможную ошибку.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL