import net.pterodactylus.util.template.TemplateProvider;
import net.pterodactylus.util.template.XmlFilter;
import net.pterodactylus.util.thread.Ticker;
+import net.pterodactylus.util.version.Version;
import freenet.clients.http.SessionManager;
import freenet.clients.http.SessionManager.Session;
import freenet.clients.http.ToadletContainer;
* currently logged in
*/
public Sone getCurrentSone(ToadletContext toadletContext) {
- return getCurrentSone(getCurrentSession(toadletContext));
+ return getCurrentSone(toadletContext, true);
+ }
+
+ /**
+ * Returns the currently logged in Sone.
+ *
+ * @param toadletContext
+ * The toadlet context
+ * @param create
+ * {@code true} to create a new session if no session exists,
+ * {@code false} to not create a new session
+ * @return The currently logged in Sone, or {@code null} if no Sone is
+ * currently logged in
+ */
+ public Sone getCurrentSone(ToadletContext toadletContext, boolean create) {
+ return getCurrentSone(getCurrentSession(toadletContext, create));
}
/**
@SuppressWarnings("synthetic-access")
public void run() {
lockedSonesNotification.add(sone);
+ lockedSonesTickerObjects.remove(sone);
notificationManager.addNotification(lockedSonesNotification);
}
}, "Sone Locked Notification");
*/
@Override
public void soneUnlocked(Sone sone) {
- Object tickerObject = lockedSonesTickerObjects.remove(sone);
- if (tickerObject == null) {
- return;
- }
lockedSonesNotification.remove(sone);
- Ticker.getInstance().deregisterEvent(tickerObject);
+ Ticker.getInstance().deregisterEvent(lockedSonesTickerObjects.remove(sone));
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void updateFound(Version version, long releaseTime) {
}
/**