68 lines
1.1 KiB
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
|
|
}
|