Merge branch 'release-0.0.6' 0.0.6
authorDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Fri, 16 Sep 2011 15:51:04 +0000 (17:51 +0200)
committerDavid ‘Bombe’ Roden <bombe@pterodactylus.net>
Fri, 16 Sep 2011 15:51:04 +0000 (17:51 +0200)
pom.xml
src/main/java/net/pterodactylus/wotns/main/Resolver.java
src/main/java/net/pterodactylus/wotns/main/WoTNSPlugin.java

diff --git a/pom.xml b/pom.xml
index 01952d3..b101911 100644 (file)
--- a/pom.xml
+++ b/pom.xml
@@ -2,7 +2,7 @@
        <modelVersion>4.0.0</modelVersion>
        <groupId>net.pterodactylus</groupId>
        <artifactId>WoTNS</artifactId>
-       <version>0.0.5</version>
+       <version>0.0.6</version>
        <dependencies>
                <dependency>
                        <groupId>net.pterodactylus</groupId>
index 0150f45..94a098e 100644 (file)
@@ -23,7 +23,10 @@ import java.util.Collections;
 import java.util.Comparator;
 import java.util.List;
 import java.util.Set;
+import java.util.logging.Level;
+import java.util.logging.Logger;
 
+import net.pterodactylus.util.logging.Logging;
 import net.pterodactylus.util.object.Default;
 import net.pterodactylus.wotns.freenet.wot.Identity;
 import net.pterodactylus.wotns.freenet.wot.IdentityManager;
@@ -38,6 +41,8 @@ import freenet.keys.FreenetURI;
  */
 public class Resolver {
 
+       private static final Logger logger = Logging.getLogger(Resolver.class);
+
        private final IdentityManager identityManager;
 
        private String ownIdentityId;
@@ -85,19 +90,18 @@ public class Resolver {
                        identityName = shortName.substring(0, atSign);
                        keyStart = shortName.substring(atSign + 1);
                }
-               @SuppressWarnings("hiding")
                final OwnIdentity ownIdentity;
-               if (this.ownIdentityId == null) {
-                       Set<OwnIdentity> ownIdentities = identityManager.getAllOwnIdentities();
-                       if (!ownIdentities.isEmpty()) {
-                               ownIdentity = ownIdentities.iterator().next();
+               if (this.ownIdentityId != null) {
+                       if (identityManager.getOwnIdentity(this.ownIdentityId) != null) {
+                               ownIdentity = identityManager.getOwnIdentity(this.ownIdentityId);
                        } else {
-                               ownIdentity = null;
+                               ownIdentity = getFirstOwnIdentity();
                        }
                } else {
-                       ownIdentity = identityManager.getOwnIdentity(ownIdentityId);
+                       ownIdentity = getFirstOwnIdentity();
                }
                if (ownIdentity == null) {
+                       logger.log(Level.SEVERE, "Can not resolve “" + shortName + "” without a Web of Trust Identity!");
                        return null;
                }
                System.out.println("using own identity " + ownIdentity + " to resolve " + shortName);
@@ -126,4 +130,12 @@ public class Resolver {
                return matchingIdentities.get(0);
        }
 
+       private OwnIdentity getFirstOwnIdentity() {
+               Set<OwnIdentity> ownIdentities = identityManager.getAllOwnIdentities();
+               if (!ownIdentities.isEmpty()) {
+                       return ownIdentities.iterator().next();
+               }
+               return null;
+       }
+
 }
index f25fa70..99f9646 100644 (file)
@@ -46,7 +46,7 @@ public class WoTNSPlugin implements FredPlugin, FredPluginL10n, FredPluginBaseL1
                Logging.setupConsoleLogging();
        }
 
-       private static final Version VERSION = new Version(0, 0, 5);
+       private static final Version VERSION = new Version(0, 0, 6);
 
        private PluginRespirator pluginRespirator;
 
@@ -98,7 +98,6 @@ public class WoTNSPlugin implements FredPlugin, FredPluginL10n, FredPluginBaseL1
                identityManager.start();
 
                resolver = new Resolver(identityManager);
-               resolver.setOwnIdentityId("e3myoFyp5avg6WYN16ImHri6J7Nj8980Fm~aQe4EX1U");
 
                webInterface = new WebInterface(this);