]> WPIA git - gigi.git/blobdiff - src/org/cacert/gigi/Certificate.java
Change cert variable names id -> serial for identification.
[gigi.git] / src / org / cacert / gigi / Certificate.java
index 9d6d5d8d39f30a1fb36c04aa9fa377454749b5ed..378b3a7001fc10e39fc01589eee794ce5ca2356a 100644 (file)
@@ -17,6 +17,7 @@ import org.cacert.gigi.util.KeyStorage;
 
 public class Certificate {
        private int id;
+       private int ownerId;
        private int serial;
        private String dn;
        private String md;
@@ -24,26 +25,29 @@ public class Certificate {
        private String crtName;
        private String csr = null;
 
-       public Certificate(String dn, String md, String csr) {
+       public Certificate(int ownerId, String dn, String md, String csr) {
+               this.ownerId = ownerId;
                this.dn = dn;
                this.md = md;
                this.csr = csr;
        }
 
-       public Certificate(int id) {
+       public Certificate(int serial) {
                try {
                        PreparedStatement ps = DatabaseConnection.getInstance().prepare(
-                               "SELECT subject, md, csr_name, crt_name FROM `emailcerts` WHERE id=?");
-                       ps.setInt(1, id);
+                               "SELECT id,subject, md, csr_name, crt_name,memid FROM `emailcerts` WHERE serial=?");
+                       ps.setInt(1, serial);
                        ResultSet rs = ps.executeQuery();
                        if (!rs.next()) {
-                               throw new IllegalArgumentException("Invalid mid " + id);
+                               throw new IllegalArgumentException("Invalid mid " + serial);
                        }
-                       this.id = id;
-                       dn = rs.getString(1);
-                       md = rs.getString(2);
-                       csrName = rs.getString(3);
-                       crtName = rs.getString(4);
+                       this.id = rs.getInt(1);
+                       dn = rs.getString(2);
+                       md = rs.getString(3);
+                       csrName = rs.getString(4);
+                       crtName = rs.getString(5);
+                       ownerId = rs.getInt(6);
+                       this.serial = serial;
                        rs.close();
                } catch (SQLException e) {
                        e.printStackTrace();
@@ -119,7 +123,6 @@ public class Certificate {
                        return CertificateStatus.SIGNING;
                }
                crtName = rs.getString(1);
-               System.out.println(crtName);
                if (rs.getTime(2) != null && rs.getTime(3) == null) {
                        return CertificateStatus.ISSUED;
                }
@@ -135,9 +138,10 @@ public class Certificate {
                                throw new IllegalStateException();
                        }
                        PreparedStatement inserter = DatabaseConnection.getInstance().prepare(
-                               "INSERT INTO emailcerts SET md=?, subject=?, coll_found=0, crt_name=''");
+                               "INSERT INTO emailcerts SET md=?, subject=?, coll_found=0, crt_name='', memid=?");
                        inserter.setString(1, md);
                        inserter.setString(2, dn);
+                       inserter.setInt(3, ownerId);
                        inserter.execute();
                        id = DatabaseConnection.lastInsertId(inserter);
                        File csrFile = KeyStorage.locateCsr(id);
@@ -222,4 +226,8 @@ public class Certificate {
                return md;
        }
 
+       public int getOwnerId() {
+               return ownerId;
+       }
+
 }