customer/internal/initialize/repositories.go

28 lines
695 B
Go
Raw Normal View History

2023-05-16 01:12:07 +00:00
package initialize
import (
"go.mongodb.org/mongo-driver/mongo"
2023-05-17 20:27:09 +00:00
"go.uber.org/zap"
2023-05-16 04:01:55 +00:00
"penahub.gitlab.yandexcloud.net/pena-services/customer/internal/repository"
2023-05-16 01:12:07 +00:00
)
type RepositoriesDeps struct {
MongoDB *mongo.Database
2023-05-17 20:27:09 +00:00
Logger *zap.Logger
2023-05-16 01:12:07 +00:00
}
type Repositories struct {
2023-05-17 20:27:09 +00:00
HealthRepository *repository.HealthRepository
AccountRepository *repository.AccountRepository
2023-05-16 01:12:07 +00:00
}
func NewRepositories(deps *RepositoriesDeps) *Repositories {
return &Repositories{
HealthRepository: repository.NewHealthRepository(deps.MongoDB),
2023-05-17 20:27:09 +00:00
AccountRepository: repository.NewAccountRepository(&repository.AccountRepositoryDeps{
MongoDB: deps.MongoDB.Collection("accounts"),
Logger: deps.Logger,
}),
2023-05-16 01:12:07 +00:00
}
}