diff options
author | Michael Muré <batolettre@gmail.com> | 2022-07-25 13:16:16 +0200 |
---|---|---|
committer | Michael Muré <batolettre@gmail.com> | 2022-07-25 13:27:17 +0200 |
commit | 3d454d9dc8ba2409046c0938618a70864e6eb8ef (patch) | |
tree | 8745f656cc8218654632ce003f997a39988d3043 /bug/bug.go | |
parent | 2ade8fb1d570ddcb4aedc9386af46d208b129daa (diff) | |
download | git-bug-3d454d9dc8ba2409046c0938618a70864e6eb8ef.tar.gz |
entity/dag: proper base operation for simplified implementation
- reduce boilerplace necessary to implement an operation
- consolidate what an operation is in the core, which in turn pave the way for a generic cache layer mechanism
- avoid the previously complex unmarshalling process
- support operation metadata from the core
- simplified testing
Diffstat (limited to 'bug/bug.go')
-rw-r--r-- | bug/bug.go | 10 |
1 files changed, 3 insertions, 7 deletions
@@ -44,11 +44,7 @@ func NewBug() *Bug { // Read will read a bug from a repository func Read(repo repository.ClockedRepo, id entity.Id) (*Bug, error) { - e, err := dag.Read(def, repo, identity.NewSimpleResolver(repo), id) - if err != nil { - return nil, err - } - return &Bug{Entity: e}, nil + return ReadWithResolver(repo, identity.NewSimpleResolver(repo), id) } // ReadWithResolver will read a bug from its Id, with a custom identity.Resolver @@ -158,7 +154,7 @@ func (bug *Bug) Compile() Snapshot { return snap } -// Lookup for the very first operation of the bug. +// FirstOp lookup for the very first operation of the bug. // For a valid Bug, this operation should be a CreateOp func (bug *Bug) FirstOp() Operation { if fo := bug.Entity.FirstOp(); fo != nil { @@ -167,7 +163,7 @@ func (bug *Bug) FirstOp() Operation { return nil } -// Lookup for the very last operation of the bug. +// LastOp lookup for the very last operation of the bug. // For a valid Bug, should never be nil func (bug *Bug) LastOp() Operation { if lo := bug.Entity.LastOp(); lo != nil { |