Исходники и презентации
This commit is contained in:
@ -0,0 +1,21 @@
|
||||
package service
|
||||
|
||||
import "golang_course/lessons/interfaces/consumer_interface/entity"
|
||||
|
||||
type clientUpdater interface {
|
||||
UpdateClient(entity.Client) error
|
||||
}
|
||||
|
||||
type ClientUpdater struct {
|
||||
repository clientUpdater
|
||||
}
|
||||
|
||||
func NewClientUpdater(repository clientUpdater) ClientUpdater {
|
||||
return ClientUpdater{
|
||||
repository: repository,
|
||||
}
|
||||
}
|
||||
|
||||
func (s *ClientUpdater) UpdateClient(client entity.Client) error {
|
||||
return s.repository.UpdateClient(client)
|
||||
}
|
||||
@ -0,0 +1,28 @@
|
||||
package service
|
||||
|
||||
import "golang_course/lessons/interfaces/consumer_interface/entity"
|
||||
|
||||
type clientGetter interface {
|
||||
GetClient(int) (entity.Client, error)
|
||||
}
|
||||
|
||||
type MessageSender struct {
|
||||
repository clientGetter
|
||||
}
|
||||
|
||||
func NewMessageSender(repository clientGetter) MessageSender {
|
||||
return MessageSender{
|
||||
repository: repository,
|
||||
}
|
||||
}
|
||||
|
||||
func (s *MessageSender) SendMessage(userId int, message string) error {
|
||||
_, err := s.repository.GetClient(userId)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// send message to client
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user