Changeset 485 in code for trunk/user.go
- Timestamp:
- Mar 29, 2021, 3:49:50 PM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/user.go
r483 r485 58 58 type deliveredClientMap map[string]string // client name -> msg ID 59 59 60 type deliveredStore struct { 61 m deliveredCasemapMap 62 } 63 64 func newDeliveredStore() deliveredStore { 65 return deliveredStore{deliveredCasemapMap{newCasemapMap(0)}} 66 } 67 68 func (ds deliveredStore) HasTarget(target string) bool { 69 return ds.m.Value(target) != nil 70 } 71 72 func (ds deliveredStore) LoadID(target, clientName string) string { 73 clients := ds.m.Value(target) 74 if clients == nil { 75 return "" 76 } 77 return clients[clientName] 78 } 79 80 func (ds deliveredStore) StoreID(target, clientName, msgID string) { 81 clients := ds.m.Value(target) 82 if clients == nil { 83 clients = make(deliveredClientMap) 84 ds.m.SetValue(target, clients) 85 } 86 clients[clientName] = msgID 87 } 88 89 func (ds deliveredStore) ForEachTarget(f func(target string)) { 90 for _, entry := range ds.m.innerMap { 91 f(entry.originalKey) 92 } 93 } 94 60 95 type network struct { 61 96 Network … … 65 100 conn *upstreamConn 66 101 channels channelCasemapMap 67 delivered delivered CasemapMap102 delivered deliveredStore 68 103 lastError error 69 104 casemap casemapping … … 82 117 stopped: make(chan struct{}), 83 118 channels: m, 84 delivered: deliveredCasemapMap{newCasemapMap(0)},119 delivered: newDeliveredStore(), 85 120 casemap: casemapRFC1459, 86 121 } … … 254 289 net.casemap = newCasemap 255 290 net.channels.SetCasemapping(newCasemap) 256 net.delivered. SetCasemapping(newCasemap)291 net.delivered.m.SetCasemapping(newCasemap) 257 292 if net.conn != nil { 258 293 net.conn.channels.SetCasemapping(newCasemap)
Note:
See TracChangeset
for help on using the changeset viewer.