# HG changeset patch
# User Kim Alvefur <zash@zash.se>
# Date 1507507721 -7200
# Node ID 21466b778bf164e3d363a93cade5437adb59c5ff
# Parent  6fd36e73082b17877230594cc98f1d54d5ea0616
mod_pubsub: Hide item persistence behind option (at least until affiliations are also persisted)

diff -r 6fd36e73082b -r 21466b778bf1 plugins/mod_pubsub/mod_pubsub.lua
--- a/plugins/mod_pubsub/mod_pubsub.lua	Mon Oct 09 01:57:55 2017 +0200
+++ b/plugins/mod_pubsub/mod_pubsub.lua	Mon Oct 09 02:08:41 2017 +0200
@@ -12,6 +12,8 @@
 local pubsub_disco_name = module:get_option_string("name", "Prosody PubSub Service");
 local expose_publisher = module:get_option_boolean("expose_publisher", false)
 
+local enable_persistence = module:get_option_boolean("experimental_pubsub_item_persistence", false);
+
 local service;
 
 local lib_pubsub = module:require "pubsub";
@@ -41,6 +43,13 @@
 	return lib_pubsub.simple_itemstore(archive, config, nil, node, expose_publisher);
 end
 
+if enable_persistence then
+	module:log("warn", "Item persistence is an experimental feature. Note that ownership information is lost on restart.")
+else
+	simple_itemstore = nil;
+end
+
+
 function simple_broadcast(kind, node, jids, item, actor)
 	if item then
 		item = st.clone(item);