app/history/helper.go

68 lines
1.1 KiB
Go

package history
import (
"fmt"
"kumoly.io/kumoly/app/util"
)
func Error() *History {
h := getBase()
h.Type = ERROR
if !util.PROD {
h.Trace = util.Stack()
}
return h
}
func Info() *History {
h := getBase()
h.Type = INFO
return h
}
func getBase() *History {
mod, file := util.CallerMod(3)
h := &History{
Module: mod,
Caller: file,
}
return h
}
func (h *History) Nm(name string) *History {
h.Name = name
return h
}
func (h *History) Msg(msg string) *History {
h.Message = msg
return h
}
func (h *History) Msgf(msg string, args ...interface{}) *History {
h.Message = fmt.Sprintf(msg, args...)
return h
}
func (h *History) Bd(body interface{}) *History {
h.Body = body
return h
}
func (h *History) Iss(issuer string) *History {
h.Issuer = issuer
return h
}
func (h *History) Grp(grp string) *History {
h.Group = grp
return h
}
func (h *History) Scp(scp string) *History {
h.Scope = scp
return h
}
// Mod alter the derived module name, and put the original mod to scope
func (h *History) Mod(mod string) *History {
h.Scope = h.Module
h.Module = mod
return h
}