aboutsummaryrefslogtreecommitdiffstats
path: root/entity
diff options
context:
space:
mode:
authorMichael Muré <batolettre@gmail.com>2022-03-10 16:34:57 +0100
committerMichael Muré <batolettre@gmail.com>2022-03-10 16:37:24 +0100
commitfd14a0763ebf0bcdf6a719aafcbf73f7f5153400 (patch)
tree8b797bce977386b85ade31c5601d49d6e2ac4336 /entity
parentdf55cc49a85eaf3a2d3c2ceb1fbcccac19fa6eb8 (diff)
downloadgit-bug-fd14a0763ebf0bcdf6a719aafcbf73f7f5153400.tar.gz
entity: allow to resolve identities when numashalling operations
Diffstat (limited to 'entity')
-rw-r--r--entity/dag/common_test.go2
-rw-r--r--entity/dag/entity.go2
-rw-r--r--entity/dag/operation_pack.go2
3 files changed, 3 insertions, 3 deletions
diff --git a/entity/dag/common_test.go b/entity/dag/common_test.go
index 25289b76..532e3ff8 100644
--- a/entity/dag/common_test.go
+++ b/entity/dag/common_test.go
@@ -67,7 +67,7 @@ func (o *op2) Author() identity.Interface {
return o.author
}
-func unmarshaler(author identity.Interface, raw json.RawMessage) (Operation, error) {
+func unmarshaler(author identity.Interface, raw json.RawMessage, resolver identity.Resolver) (Operation, error) {
var t struct {
OperationType int `json:"type"`
}
diff --git a/entity/dag/entity.go b/entity/dag/entity.go
index c4368514..60adcbe6 100644
--- a/entity/dag/entity.go
+++ b/entity/dag/entity.go
@@ -26,7 +26,7 @@ type Definition struct {
// the Namespace in git (bugs, prs, ...)
Namespace string
// a function decoding a JSON message into an Operation
- OperationUnmarshaler func(author identity.Interface, raw json.RawMessage) (Operation, error)
+ OperationUnmarshaler func(author identity.Interface, raw json.RawMessage, resolver identity.Resolver) (Operation, error)
// the expected format version number, that can be used for data migration/upgrade
FormatVersion uint
}
diff --git a/entity/dag/operation_pack.go b/entity/dag/operation_pack.go
index 5d74e13f..2794606a 100644
--- a/entity/dag/operation_pack.go
+++ b/entity/dag/operation_pack.go
@@ -314,7 +314,7 @@ func unmarshallPack(def Definition, resolver identity.Resolver, data []byte) ([]
for _, raw := range aux.Operations {
// delegate to specialized unmarshal function
- op, err := def.OperationUnmarshaler(author, raw)
+ op, err := def.OperationUnmarshaler(author, raw, resolver)
if err != nil {
return nil, nil, err
}