33 lines
807 B
Go
33 lines
807 B
Go
package localserver
|
|
|
|
// type (
|
|
// LogMiddleware struct {
|
|
// menuItem *systray.MenuItem
|
|
// }
|
|
// )
|
|
|
|
// func NewLogMiddleware(menuItem *systray.MenuItem) *LogMiddleware {
|
|
// return &LogMiddleware{
|
|
// menuItem: menuItem,
|
|
// }
|
|
// }
|
|
|
|
// func (lm *LogMiddleware) Process(ctx context.Context, req *http.Request, w http.ResponseWriter) (err error) {
|
|
// done, errCh := make(chan struct{}), make(chan error)
|
|
// go func() {
|
|
// // logger.Println("received a request")
|
|
// lm.menuItem.AddSubMenuItemCheckbox(filepath.Join("remote addr : %s", req.RemoteAddr), "remote", false)
|
|
// // logger.Printf("from %s\n", req.RemoteAddr)
|
|
// done <- struct{}{}
|
|
// }()
|
|
// select {
|
|
// case <-ctx.Done():
|
|
// err = ctx.Err()
|
|
// return
|
|
// case <-done:
|
|
// return nil
|
|
// case err = <-errCh:
|
|
// return
|
|
// }
|
|
// }
|