X-Git-Url: https://code.wpia.club/?p=gigi.git;a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FCertificate.java;fp=src%2Forg%2Fcacert%2Fgigi%2FCertificate.java;h=efe5aec5473d5c1dcb7e050002e26b2e6b45f689;hp=378b3a7001fc10e39fc01589eee794ce5ca2356a;hb=28e686114d3a851a8f3163862b0c4ec4de3eacce;hpb=baa0986163014f20ca273c1502754940f60b7d41 diff --git a/src/org/cacert/gigi/Certificate.java b/src/org/cacert/gigi/Certificate.java index 378b3a70..efe5aec5 100644 --- a/src/org/cacert/gigi/Certificate.java +++ b/src/org/cacert/gigi/Certificate.java @@ -18,7 +18,7 @@ import org.cacert.gigi.util.KeyStorage; public class Certificate { private int id; private int ownerId; - private int serial; + private String serial; private String dn; private String md; private String csrName; @@ -32,11 +32,11 @@ public class Certificate { this.csr = csr; } - public Certificate(int serial) { + private Certificate(String serial) { try { PreparedStatement ps = DatabaseConnection.getInstance().prepare( "SELECT id,subject, md, csr_name, crt_name,memid FROM `emailcerts` WHERE serial=?"); - ps.setInt(1, serial); + ps.setString(1, serial); ResultSet rs = ps.executeQuery(); if (!rs.next()) { throw new IllegalArgumentException("Invalid mid " + serial); @@ -214,7 +214,7 @@ public class Certificate { return id; } - public int getSerial() { + public String getSerial() { return serial; } @@ -230,4 +230,14 @@ public class Certificate { return ownerId; } + public static Certificate getBySerial(String serial) { + // TODO caching? + try { + return new Certificate(serial); + } catch (IllegalArgumentException e) { + + } + return null; + } + }