github.com/zly-app/zapp@v1.3.3/handler.go (about)

     1  package zapp
     2  
     3  import (
     4  	"github.com/zly-app/zapp/handler"
     5  )
     6  
     7  type Handler = handler.Handler
     8  
     9  // handler类型
    10  type HandlerType = handler.HandlerType
    11  
    12  const (
    13  	// 在app初始化前
    14  	BeforeInitializeHandler = handler.BeforeInitializeHandler
    15  	// 在app初始化后
    16  	AfterInitializeHandler = handler.AfterInitializeHandler
    17  	// 在app启动前
    18  	BeforeStartHandler = handler.BeforeStartHandler
    19  	// 在app启动后
    20  	AfterStartHandler = handler.AfterStartHandler
    21  	// 在app退出前
    22  	BeforeExitHandler = handler.BeforeExitHandler
    23  	// 在app退出后
    24  	AfterExitHandler = handler.AfterExitHandler
    25  )
    26  
    27  // 添加handler, 和WithHandler不同的是, 它可以在NewApp之前执行, 并且它的执行顺序优先于WithHandler
    28  // 这个函数是兼容旧逻辑
    29  func AddHandler(t HandlerType, hs ...Handler) {
    30  	handler.AddHandler(t, hs...)
    31  }
    32  
    33  func (app *appCli) handler(t HandlerType) {
    34  	handler.Trigger(app, t)
    35  	for _, h := range app.opt.Handlers[t] {
    36  		h(app, t)
    37  	}
    38  }