use of data.RSS in project KaellyBot by Kaysoro.
the class RSSFinder method start.
public static void start() {
if (!isStarted) {
isStarted = true;
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
scheduler.scheduleAtFixedRate(() -> {
Map<Language, List<RSS>> allFeeds = new HashMap<>();
for (Language lg : Language.values()) allFeeds.put(lg, RSS.getRSSFeeds(lg));
for (RSSFinder finder : getRSSFinders().values()) try {
IChannel chan = ClientConfig.DISCORD().getChannelByID(Long.parseLong(finder.getChan()));
Language lg = Translator.getLanguageFrom(chan);
List<RSS> rssFeeds = allFeeds.get(Translator.getLanguageFrom(chan));
long lastRSS = -1;
for (RSS rss : rssFeeds) if (rss.getDate() > finder.getLastRSS()) {
Message.sendEmbed(chan, rss.getEmbedObject(lg));
lastRSS = rss.getDate();
}
if (lastRSS != -1)
finder.setLastRSS(lastRSS);
} catch (Exception e) {
LOG.error("RSSFinder", e);
}
}, 0, DELTA, TimeUnit.MINUTES);
}
}
Aggregations