Mercurial > prosody-modules
annotate mod_s2s_reload_newcomponent/mod_s2s_reload_newcomponent.lua @ 5571:ca3c2d11823c
mod_pubsub_feeds: Track latest timestamp seen in feeds instead of last poll
This should ensure that an entry that has a publish timestmap after the
previously oldest post, but before the time of the last poll check, is
published to the node.
Previously if an entry would be skipped if it was published at 13:00
with a timestamp of 12:30, where the last poll was at 12:45.
For feeds that lack a timestamp, it now looks for the first post that is
not published, assuming that the feed is in reverse chronological order,
then iterates back up from there.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 25 Jun 2023 16:27:55 +0200 |
parents | fe5bb7b13a59 |
children |
rev | line source |
---|---|
213
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
1 local modulemanager = require "core.modulemanager"; |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
2 local config = require "core.configmanager"; |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
3 |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
4 module.host = "*"; |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
5 |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
6 local function reload_components() |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
7 local defined_hosts = config.getconfig(); |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
8 |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
9 for host in pairs(defined_hosts) do |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
10 if (not hosts[host] and host ~= "*") then |
214
7487f8b47662
mod_s2s_reload_newcomponent: fix debug logs
Gaurav <gauravsri@gmail.com>
parents:
213
diff
changeset
|
11 module:log ("debug", "loading new component %s", host); |
2781
fe5bb7b13a59
mod_s2s_reload_newcomponent: Fix to use imported configmanager instead of global
Matthew Wild <mwild1@gmail.com>
parents:
214
diff
changeset
|
12 modulemanager.load(host, config.get(host, "core", "component_module")); |
213
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
13 end |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
14 end; |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
15 |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
16 return; |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
17 end |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
18 |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
19 module:hook("config-reloaded", reload_components); |
89051a926f74
initial creation of module for reloading new components
Gaurav <gauravsri@gmail.com>
parents:
diff
changeset
|
20 |