clocks.go

 1package bug
 2
 3import (
 4	"github.com/MichaelMure/git-bug/repository"
 5)
 6
 7// ClockLoader is the repository.ClockLoader for the Bug entity
 8var ClockLoader = repository.ClockLoader{
 9	Clocks: []string{creationClockName, editClockName},
10	Witnesser: func(repo repository.ClockedRepo) error {
11		for b := range ReadAllLocalBugs(repo) {
12			if b.Err != nil {
13				return b.Err
14			}
15
16			createClock, err := repo.GetOrCreateClock(creationClockName)
17			if err != nil {
18				return err
19			}
20			err = createClock.Witness(b.Bug.createTime)
21			if err != nil {
22				return err
23			}
24
25			editClock, err := repo.GetOrCreateClock(editClockName)
26			if err != nil {
27				return err
28			}
29			err = editClock.Witness(b.Bug.editTime)
30			if err != nil {
31				return err
32			}
33		}
34
35		return nil
36	},
37}