X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FdbObjects%2FCertificateProfile.java;h=0aa45512708391d41fa833f1c35e634de7bf1959;hb=70b23989058140bce576713168d0be4365c71037;hp=e771cd12750bcfcfd87ad46f521403c23cce2321;hpb=e409ba881965634f63f0b67824bc93dda4ec4327;p=gigi.git diff --git a/src/org/cacert/gigi/dbObjects/CertificateProfile.java b/src/org/cacert/gigi/dbObjects/CertificateProfile.java index e771cd12..0aa45512 100644 --- a/src/org/cacert/gigi/dbObjects/CertificateProfile.java +++ b/src/org/cacert/gigi/dbObjects/CertificateProfile.java @@ -1,11 +1,10 @@ package org.cacert.gigi.dbObjects; -import java.sql.PreparedStatement; -import java.sql.ResultSet; -import java.sql.SQLException; import java.util.HashMap; import org.cacert.gigi.database.DatabaseConnection; +import org.cacert.gigi.database.GigiPreparedStatement; +import org.cacert.gigi.database.GigiResultSet; public class CertificateProfile { @@ -15,14 +14,17 @@ public class CertificateProfile { private final String visibleName; + private final int caId; + private static HashMap byName = new HashMap<>(); private static HashMap byId = new HashMap<>(); - private CertificateProfile(int id, String keyName, String visibleName) { + private CertificateProfile(int id, String keyName, String visibleName, int caId) { this.id = id; this.keyName = keyName; this.visibleName = visibleName; + this.caId = caId; } public int getId() { @@ -37,17 +39,17 @@ public class CertificateProfile { return visibleName; } + public int getCAId() { + return caId; + } + static { - try { - PreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT id, keyname, name FROM `profiles`"); - ResultSet rs = ps.executeQuery(); - while (rs.next()) { - CertificateProfile cp = new CertificateProfile(rs.getInt("id"), rs.getString("keyName"), rs.getString("name")); - byId.put(cp.getId(), cp); - byName.put(cp.getKeyName(), cp); - } - } catch (SQLException e) { - e.printStackTrace(); + GigiPreparedStatement ps = DatabaseConnection.getInstance().prepare("SELECT id, keyname, name, rootcert FROM `profiles`"); + GigiResultSet rs = ps.executeQuery(); + while (rs.next()) { + CertificateProfile cp = new CertificateProfile(rs.getInt("id"), rs.getString("keyName"), rs.getString("name"), rs.getInt("rootcert")); + byId.put(cp.getId(), cp); + byName.put(cp.getKeyName(), cp); } } @@ -60,4 +62,8 @@ public class CertificateProfile { return byName.get(name); } + public static CertificateProfile[] getAll() { + return byId.values().toArray(new CertificateProfile[byId.size()]); + } + }