import net.pterodactylus.util.logging.Logging;
import net.pterodactylus.util.number.Numbers;
import net.pterodactylus.util.service.AbstractService;
+import net.pterodactylus.util.thread.NamedThreadFactory;
import net.pterodactylus.util.thread.Ticker;
import net.pterodactylus.util.validation.EqualityValidator;
import net.pterodactylus.util.validation.IntegerRangeValidator;
private final ImageInserter imageInserter;
/** Sone downloader thread-pool. */
- private final ExecutorService soneDownloaders = Executors.newFixedThreadPool(10);
+ private final ExecutorService soneDownloaders = Executors.newFixedThreadPool(10, new NamedThreadFactory("Sone Downloader %2$d"));
/** The update checker. */
private final UpdateChecker updateChecker;
if (!storedPosts.contains(post)) {
if (post.getTime() < getSoneFollowingTime(sone)) {
knownPosts.add(post.getId());
+ post.setKnown(true);
} else if (!knownPosts.contains(post.getId())) {
- sone.setKnown(false);
coreListenerManager.fireNewPostFound(post);
}
}
if (!storedReplies.contains(reply)) {
if (reply.getTime() < getSoneFollowingTime(sone)) {
knownReplies.add(reply.getId());
+ reply.setKnown(true);
} else if (!knownReplies.contains(reply.getId())) {
- reply.setKnown(false);
coreListenerManager.fireNewReplyFound(reply);
}
}
*/
@Override
public void identityUpdated(OwnIdentity ownIdentity, final Identity identity) {
- new Thread(new Runnable() {
+ soneDownloaders.execute(new Runnable() {
@Override
@SuppressWarnings("synthetic-access")
soneDownloader.addSone(sone);
soneDownloader.fetchSone(sone);
}
- }).start();
+ });
}
/**
View.Time.AFewSecondsAgo=au cours des dernières secondes passées
View.Time.HalfAMinuteAgo=au cours des 30 dernières secondes
View.Time.AMinuteAgo=au cours de la dernière minute
-View.Time.XMinutesAgo=${min} il y a quelques minutes
+View.Time.XMinutesAgo=il y a environs {min} minutes
View.Time.HalfAnHourAgo=au cours de la dernière demi heure
View.Time.AnHourAgo=il y a environ une heure
-View.Time.XHoursAgo=${heure} au cours des dernières heures
+View.Time.XHoursAgo=Il y a environ ${hour} heures
View.Time.ADayAgo=il y a environ un jour
-View.Time.XDaysAgo=${jour} il y a quelques jours
+View.Time.XDaysAgo=il y a plus ou moins ${day} jours
View.Time.AWeekAgo=il y a environ une semaine
-View.Time.XWeeksAgo=${semaine} au cours des dernières semaines
+View.Time.XWeeksAgo=au cours des dernières ${week}semaines
View.Time.AMonthAgo=au cours du dernier mois
-View.Time.XMonthsAgo=${mois} au cours des derniers mois
+View.Time.XMonthsAgo=au cours des derniers ${month} mois
View.Time.AYearAgo=au cours de la dernière année
-View.Time.XYearsAgo=${année} au cours des dernières années
+View.Time.XYearsAgo=au cours des dernières ${year} années
WebInterface.DefaultText.StatusUpdate=Exprimez-vous
WebInterface.DefaultText.Message=Écrire un message...