aboutsummaryrefslogtreecommitdiffstats
path: root/org_apg/src/org/apg/KeyServer.java
diff options
context:
space:
mode:
Diffstat (limited to 'org_apg/src/org/apg/KeyServer.java')
-rw-r--r--org_apg/src/org/apg/KeyServer.java46
1 files changed, 46 insertions, 0 deletions
diff --git a/org_apg/src/org/apg/KeyServer.java b/org_apg/src/org/apg/KeyServer.java
new file mode 100644
index 000000000..32158454f
--- /dev/null
+++ b/org_apg/src/org/apg/KeyServer.java
@@ -0,0 +1,46 @@
+package org.apg;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+import java.util.Vector;
+
+public abstract class KeyServer {
+ static public class QueryException extends Exception {
+ private static final long serialVersionUID = 2703768928624654512L;
+
+ public QueryException(String message) {
+ super(message);
+ }
+ }
+
+ static public class TooManyResponses extends Exception {
+ private static final long serialVersionUID = 2703768928624654513L;
+ }
+
+ static public class InsufficientQuery extends Exception {
+ private static final long serialVersionUID = 2703768928624654514L;
+ }
+
+ static public class AddKeyException extends Exception {
+ private static final long serialVersionUID = -507574859137295530L;
+ }
+
+ static public class KeyInfo implements Serializable {
+ private static final long serialVersionUID = -7797972113284992662L;
+ public Vector<String> userIds;
+ public String revoked;
+ public Date date;
+ public String fingerPrint;
+ public long keyId;
+ public int size;
+ public String algorithm;
+ }
+
+ abstract List<KeyInfo> search(String query) throws QueryException, TooManyResponses,
+ InsufficientQuery;
+
+ abstract String get(long keyId) throws QueryException;
+
+ abstract void add(String armouredText) throws AddKeyException;
+}