]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/dbObjects/CertificateOwner.java
add: split API and add CATS import API
[gigi.git] / src / org / cacert / gigi / dbObjects / CertificateOwner.java
index 661033fbf903996e43c8bdbe3826a0660de787d2..2adda5ee4fea22130a37503464ad44e69c9c71c2 100644 (file)
@@ -1,6 +1,7 @@
 package org.cacert.gigi.dbObjects;
 
 import java.util.LinkedList;
+import java.util.List;
 
 import org.cacert.gigi.database.DatabaseConnection;
 import org.cacert.gigi.database.GigiPreparedStatement;
@@ -103,4 +104,26 @@ public abstract class CertificateOwner implements IdCachable {
         myCache.remove(this);
     }
 
+    public String[] getAdminLog() {
+        GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("SELECT `when`, type, information FROM `adminLog` WHERE uid=? ORDER BY `when` ASC");
+        prep.setInt(1, getId());
+        GigiResultSet res = prep.executeQuery();
+        List<String> entries = new LinkedList<String>();
+
+        while (res.next()) {
+            entries.add(res.getString(2) + " (" + res.getString(3) + ")");
+        }
+
+        return entries.toArray(new String[0]);
+    }
+
+    public static CertificateOwner getByEnabledSerial(String serial) {
+        GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("SELECT `memid` FROM `certs` WHERE serial=? AND `disablelogin`='0' AND `revoked` is NULL");
+        prep.setString(1, serial.toLowerCase());
+        GigiResultSet res = prep.executeQuery();
+        if (res.next()) {
+            return getById(res.getInt(1));
+        }
+        return null;
+    }
 }