mod_serv_http.go 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. // package mod_serv_http -- модуль HTTP-сервера
  2. package mod_serv_http
  3. import (
  4. "gitp78su.ipnodns.ru/svi/kern/krn/kmodule"
  5. "gitp78su.ipnodns.ru/svi/kern/krn/kserv_http"
  6. . "gitp78su.ipnodns.ru/svi/kern/krn/ktypes"
  7. "gitp78su.ipnodns.ru/svi/kern/mds/mod_serv_http/http_api"
  8. "gitp78su.ipnodns.ru/svi/kern/mds/mod_serv_http/page_module"
  9. "gitp78su.ipnodns.ru/svi/kern/mds/mod_serv_http/page_modules"
  10. "gitp78su.ipnodns.ru/svi/kern/mds/mod_serv_http/page_monolit"
  11. )
  12. // ModuleServHttp -- модуль HTTP-сервера
  13. type ModuleServHttp struct {
  14. IKernelModule
  15. kServHttp IKernelServerHttp
  16. log ILogBuf
  17. }
  18. // NewModuleServHttp -- возвращает новый модуль HTTP-сервера
  19. func NewModuleServHttp() *ModuleServHttp {
  20. sf := &ModuleServHttp{
  21. IKernelModule: kmodule.NewKernelModule("kServHttp"),
  22. kServHttp: kserv_http.GetKernelServHttp(),
  23. }
  24. sf.log = sf.Ctx().Log()
  25. _ = page_monolit.GetPageMonolit()
  26. _ = page_modules.GetPageModules()
  27. _ = page_module.GetPageModule()
  28. _ = http_api.NewHttpApi()
  29. return sf
  30. }
  31. // Run -- запускает модуль в работу
  32. func (sf *ModuleServHttp) Run() {
  33. sf.log.Info("ModuleServHttp.Run(): module=%v, is run", sf.Name())
  34. go sf.kServHttp.Run()
  35. }
  36. // IsWork -- признак работы модуля
  37. func (sf *ModuleServHttp) IsWork() bool {
  38. return sf.kServHttp.IsWork()
  39. }