Return local Sones from core and web interface.
[Sone.git] / src / main / java / net / pterodactylus / sone / web / LoginPage.java
index 8d269dd..5934497 100644 (file)
@@ -24,6 +24,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.logging.Logger;
 
+import net.pterodactylus.sone.data.LocalSone;
 import net.pterodactylus.sone.data.Sone;
 import net.pterodactylus.sone.freenet.wot.OwnIdentity;
 import net.pterodactylus.sone.web.page.FreenetRequest;
@@ -32,6 +33,8 @@ import net.pterodactylus.util.template.TemplateContext;
 import net.pterodactylus.util.web.Method;
 import freenet.clients.http.ToadletContext;
 
+import com.google.common.base.Optional;
+
 /**
  * The login page manages logging the user in.
  *
@@ -71,9 +74,9 @@ public class LoginPage extends SoneTemplatePage {
                templateContext.set("sones", localSones);
                if (request.getMethod() == Method.POST) {
                        String soneId = request.getHttpRequest().getPartAsStringFailsafe("sone-id", 100);
-                       Sone selectedSone = webInterface.getCore().getLocalSone(soneId);
-                       if (selectedSone != null) {
-                               setCurrentSone(request.getToadletContext(), selectedSone);
+                       Optional<LocalSone> selectedSone = webInterface.getCore().getLocalSone(soneId);
+                       if (selectedSone.isPresent()) {
+                               setCurrentSone(request.getToadletContext(), selectedSone.get());
                                String target = request.getHttpRequest().getParam("target");
                                if ((target == null) || (target.length() == 0)) {
                                        target = "index.html";