package application import ( "git.sxidc.com/go-framework/baize/framework/core/api" "git.sxidc.com/go-framework/baize/framework/core/infrastructure" ) type App struct { // api实例 apiInstance *api.Api // 基础设施实例 infrastructureInstance *infrastructure.Infrastructure } // New 创建Application func New(api *api.Api, i *infrastructure.Infrastructure) *App { return &App{ apiInstance: api, infrastructureInstance: i, } } // Start 运行应用 func (app *App) Start() error { err := app.apiInstance.Start() if err != nil { return err } return nil } // Finish 终止应用 func (app *App) Finish() error { err := app.apiInstance.Finish() if err != nil { return err } return nil } // Api 获取api实例 func (app *App) Api() *api.Api { return app.apiInstance } // Infrastructure 获取Infrastructure实例 func (app *App) Infrastructure() *infrastructure.Infrastructure { return app.infrastructureInstance } // ChooseRouter 选择Router func (app *App) ChooseRouter(routerType string, version string) api.Router { return app.Api().ChooseRouter(routerType, version) }