treasurer/internal/initialize/clients.go

39 lines
881 B
Go
Raw Normal View History

2023-06-13 13:22:51 +00:00
package initialize
import (
"go.uber.org/zap"
2024-12-16 13:47:40 +00:00
"gitea.pena/PenaSide/treasurer/internal/errors"
"gitea.pena/PenaSide/treasurer/internal/interface/client"
"gitea.pena/PenaSide/treasurer/internal/models"
2023-06-13 13:22:51 +00:00
)
type ClientsDeps struct {
Logger *zap.Logger
YoomoneyConfiguration *models.YoomomeyConfiguration
}
type Clients struct {
Callback *client.CallbackClient
Yandex *client.YandexClient
}
func NewClients(deps ClientsDeps) (*Clients, errors.Error) {
callbackClient, err := client.NewCallbackClient(client.CallbackClientDeps{Logger: deps.Logger})
if err != nil {
return nil, err
}
yandexClient, err := client.NewYandexClient(client.YandexClientDeps{
Logger: deps.Logger,
Configuration: deps.YoomoneyConfiguration,
})
if err != nil {
return nil, err
}
return &Clients{
Callback: callbackClient,
Yandex: yandexClient,
}, nil
}