Mercurial > prosody-modules
comparison mod_storage_memory/mod_storage_memory.lua @ 2171:85d88ed4f2a2
mod_storage_memory: Implement 'add_keys' method of map stores (required for rosters in 0.10+)
| author | Kim Alvefur <zash@zash.se> |
|---|---|
| date | Sat, 07 May 2016 13:37:03 +0200 |
| parents | 4454f124465a |
| children | a347b71adb07 |
comparison
equal
deleted
inserted
replaced
| 2170:4652a112a4ba | 2171:85d88ed4f2a2 |
|---|---|
| 36 if userstore == nil then | 36 if userstore == nil then |
| 37 userstore = {}; | 37 userstore = {}; |
| 38 self.store[username or NULL] = userstore; | 38 self.store[username or NULL] = userstore; |
| 39 end | 39 end |
| 40 userstore[key] = data; | 40 userstore[key] = data; |
| 41 return true; | |
| 42 end | |
| 43 | |
| 44 map_store.remove = {}; | |
| 45 function map_store:set_keys(username, keydatas) | |
| 46 local userstore = self.store[username or NULL]; | |
| 47 if userstore == nil then | |
| 48 userstore = {}; | |
| 49 self.store[username or NULL] = userstore; | |
| 50 end | |
| 51 for k,v in pairs(keydatas) do | |
| 52 if v == self.remove then v = nil; end | |
| 53 current[k] = v; | |
| 54 end | |
| 41 return true; | 55 return true; |
| 42 end | 56 end |
| 43 | 57 |
| 44 local archive_store = {}; | 58 local archive_store = {}; |
| 45 archive_store.__index = archive_store; | 59 archive_store.__index = archive_store; |
