func (db *BoltJobDB) Get(id string) (*job.Job, error) { j := new(job.Job) err := db.dbConn.View(func(tx *bolt.Tx) error { b := tx.Bucket(jobBucket) v := b.Get([]byte(id)) if v == nil { return job.ErrJobNotFound(id) } buf := bytes.NewBuffer(v) err := gob.NewDecoder(buf).Decode(j) return err }) if err != nil { return nil, err } j.Id = id return j, nil }