feat(elder): @Elder merges a thread's delivers when asked (#26)
This commit is contained in:
1 parent
b43cb8c2cc
commit
77b33cbe6d
2 files changed
+70
-2
No files matched your search
+19
@@ -158,6 +158,25 @@ func (s *MessageStore) NudgeFor(nestID, targetMsgID string) (Message, bool) {
|
||||
return Message{}, false
|
||||
}
|
||||
|
||||
// ReportsTo lists messages that answer a given referent, oldest first.
|
||||
func (s *MessageStore) ReportsTo(nestID, referentID string, kinds ...string) []Message {
|
||||
s.mu.Lock()
|
||||
defer s.mu.Unlock()
|
||||
var out []Message
|
||||
for _, m := range s.log[nestID] {
|
||||
if m.RefersTo != referentID {
|
||||
continue
|
||||
}
|
||||
for _, k := range kinds {
|
||||
if m.Kind == k {
|
||||
out = append(out, m)
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
return out
|
||||
}
|
||||
|
||||
func (s *MessageStore) save(nestID string) error {
|
||||
if err := os.MkdirAll(s.dir, 0o755); err != nil {
|
||||
return err
|
||||
|
||||
Reference in new issue
Block a user