iservice.go 724 B

12345678910111213141516171819202122232425262728
  1. // package types -- содержит интерфейсы проекта
  2. package types
  3. import (
  4. "context"
  5. "sync"
  6. )
  7. // IServCtx -- контекст сервиса
  8. type IServCtx interface {
  9. // Ctx -- возвращает контекст приложения
  10. Ctx() context.Context
  11. // CancelApp -- отменяет контекст приложения
  12. CancelApp()
  13. // Wg -- возвращает ожидатель группы потоков
  14. Wg() *sync.WaitGroup
  15. }
  16. // IService -- объект сервиса
  17. type IService interface {
  18. IServCtx
  19. // Run -- запускает сервис в работу
  20. Run()
  21. // Store -- хранилище
  22. Store() IStore
  23. // ServHttp -- HTTP-сервер
  24. ServHttp() IServHttp
  25. }