Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/processone/ejabberd.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/mod_offline.erl')
-rw-r--r--src/mod_offline.erl14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/mod_offline.erl b/src/mod_offline.erl
index 369b9ec7a..d81022fdd 100644
--- a/src/mod_offline.erl
+++ b/src/mod_offline.erl
@@ -189,7 +189,8 @@ store_offline_msg(Host, {User, _}, Msgs, Len, MaxOfflineMsgs,
lists:foreach(
fun(#offline_msg{us = US,
timestamp = TS} = M) ->
- ejabberd_riak:put(M, [{i, TS}, {'2i', [{<<"us">>, US}]}])
+ ejabberd_riak:put(M, offline_msg_schema(),
+ [{i, TS}, {'2i', [{<<"us">>, US}]}])
end, Msgs)
end.
@@ -440,7 +441,7 @@ pop_offline_messages(Ls, LUser, LServer, odbc) ->
_ -> Ls
end;
pop_offline_messages(Ls, LUser, LServer, riak) ->
- case ejabberd_riak:get_by_index(offline_msg,
+ case ejabberd_riak:get_by_index(offline_msg, offline_msg_schema(),
<<"us">>, {LUser, LServer}) of
{ok, Rs} ->
try
@@ -655,7 +656,8 @@ read_all_msgs(LUser, LServer, mnesia) ->
mnesia:dirty_read({offline_msg, US}));
read_all_msgs(LUser, LServer, riak) ->
case ejabberd_riak:get_by_index(
- offline_msg, <<"us">>, {LUser, LServer}) of
+ offline_msg, offline_msg_schema(),
+ <<"us">>, {LUser, LServer}) of
{ok, Rs} ->
lists:keysort(#offline_msg.timestamp, Rs);
_Err ->
@@ -1014,6 +1016,9 @@ count_offline_messages(_Acc, User, Server) ->
N = count_offline_messages(User, Server),
{stop, N}.
+offline_msg_schema() ->
+ {record_info(fields, offline_msg), #offline_msg{}}.
+
export(_Server) ->
[{offline_msg,
fun(Host, #offline_msg{us = {LUser, LServer},
@@ -1073,6 +1078,7 @@ import(LServer) ->
import(_LServer, mnesia, #offline_msg{} = Msg) ->
mnesia:dirty_write(Msg);
import(_LServer, riak, #offline_msg{us = US, timestamp = TS} = M) ->
- ejabberd_riak:put(M, [{i, TS}, {'2i', [{<<"us">>, US}]}]);
+ ejabberd_riak:put(M, offline_msg_schema(),
+ [{i, TS}, {'2i', [{<<"us">>, US}]}]);
import(_, _, _) ->
pass.