application.go 782 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. package application
  2. import (
  3. "git.sxidc.com/go-framework/baize/api"
  4. "git.sxidc.com/go-framework/baize/infrastructure/logger"
  5. )
  6. type App struct {
  7. // api实例
  8. apiInstance *api.Api
  9. // 日志
  10. loggerInstance *logger.Logger
  11. }
  12. // New 创建Application
  13. func New(api *api.Api) *App {
  14. return &App{
  15. apiInstance: api,
  16. }
  17. }
  18. // Start 运行应用
  19. func (app *App) Start() error {
  20. err := app.apiInstance.Start()
  21. if err != nil {
  22. return err
  23. }
  24. return nil
  25. }
  26. // Finish 终止应用
  27. func (app *App) Finish() error {
  28. err := app.apiInstance.Finish()
  29. if err != nil {
  30. return err
  31. }
  32. return nil
  33. }
  34. // Api 获取api实例
  35. func (app *App) Api() *api.Api {
  36. return app.apiInstance
  37. }
  38. // Logger 获取logger实例
  39. func (app *App) Logger() *logger.Logger {
  40. return app.loggerInstance
  41. }