File

plugins/mod_storage_none.lua @ 11821:a9ad287c3388

core.moduleapi: Filter out unrelated direct replies to module:send_iq This is primarily something that happens with an internal query to mod_mam, which calls origin.send() several times with results, leading to the first such result being treated as the final response and resolving the promise. Now, these responses pass trough to the underlying origin.send(), where they can be caught. Tricky but not impossible. For remote queries, it's even trickier, you would likely need to bind a resource or similar.
author Kim Alvefur <zash@zash.se>
date Fri, 24 Sep 2021 20:12:16 +0200
parent 8061:ef671d337577
line wrap: on
line source

-- luacheck: ignore 212

local driver = {};
local driver_mt = { __index = driver };

function driver:open(store, typ)
	if typ and typ ~= "keyval" and typ ~= "archive" then
		return nil, "unsupported-store";
	end
	return setmetatable({ store = store, type = typ }, driver_mt);
end
function driver:get(user)
	return {};
end

function driver:set(user, data)
	return nil, "Storage disabled";
end

function driver:stores(username)
	return { "roster" };
end

function driver:purge(user)
	return true;
end

function driver:append()
	return nil, "Storage disabled";
end

function driver:find()
	return function () end, 0;
end

function driver:delete()
	return true;
end

module:provides("storage", driver);