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; |