feat: add manager
This commit is contained in:
@@ -13,7 +13,7 @@ import (
|
||||
func (job *ManagedJob) loadState() {
|
||||
err := job.db.View(
|
||||
func(tx *buntdb.Tx) error {
|
||||
if val, err := tx.Get(job.def.Key); err != nil {
|
||||
if val, err := tx.Get(string(job.def.GetUID())); err != nil {
|
||||
return err
|
||||
} else {
|
||||
return json.Unmarshal([]byte(val), job.state)
|
||||
@@ -30,15 +30,15 @@ func (job *ManagedJob) updateState(state jobState) {
|
||||
|
||||
value, _ := json.Marshal(job.state)
|
||||
job.db.Update(func(tx *buntdb.Tx) error {
|
||||
_, _, err := tx.Set(job.def.Key, string(value), nil)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
return tx.Commit()
|
||||
_, _, err := tx.Set(string(job.def.GetUID()), string(value), nil)
|
||||
return err
|
||||
})
|
||||
}
|
||||
|
||||
func (job *ManagedJob) setError(errMsg string) {
|
||||
if job.state == nil {
|
||||
job.state = &jobState{}
|
||||
}
|
||||
job.state.Error = &errMsg
|
||||
job.state.Status = JobStatusError
|
||||
job.updateState(*job.state)
|
||||
|
||||
Reference in New Issue
Block a user