X-Git-Url: https://code.wpia.club/?a=blobdiff_plain;f=src%2Forg%2Fcacert%2Fgigi%2FUser.java;h=fd1989b26aa41e168d4b38cfc54a3eb5270b54ad;hb=c1439b0b709451533793751cfdbb250eeb2754ec;hp=b3fdb26ceaf23b6bb2cd2d36a1a4d3ca7a1e972f;hpb=aa1827120e7034a2247b015e91dbd29ed3cf4db5;p=gigi.git diff --git a/src/org/cacert/gigi/User.java b/src/org/cacert/gigi/User.java index b3fdb26c..fd1989b2 100644 --- a/src/org/cacert/gigi/User.java +++ b/src/org/cacert/gigi/User.java @@ -14,11 +14,13 @@ public class User { private int id; - Name name = new Name(null, null, null, null); + private Name name = new Name(null, null, null, null); - Date dob; + private Date dob; - String email; + private String email; + + private Assurance[] receivedAssurances, madeAssurances; public User(int id) { this.id = id; @@ -377,4 +379,48 @@ public class User { } throw new GigiApiException("Email not one of user's email addresses."); } + + public Assurance[] getReceivedAssurances() throws SQLException { + if (receivedAssurances == null) { + PreparedStatement query = DatabaseConnection.getInstance().prepare("SELECT * FROM notary WHERE `to`=? AND deleted=0"); + query.setInt(1, getId()); + ResultSet res = query.executeQuery(); + res.last(); + Assurance[] assurances = new Assurance[res.getRow()]; + res.beforeFirst(); + for (int i = 0; i < assurances.length; i++) { + res.next(); + assurances[i] = new Assurance(res); + } + this.receivedAssurances = assurances; + return assurances; + } + return receivedAssurances; + } + + public Assurance[] getMadeAssurances() throws SQLException { + if (madeAssurances == null) { + PreparedStatement query = DatabaseConnection.getInstance().prepare("SELECT * FROM notary WHERE `from`=? AND deleted=0"); + query.setInt(1, getId()); + ResultSet res = query.executeQuery(); + res.last(); + Assurance[] assurances = new Assurance[res.getRow()]; + res.beforeFirst(); + for (int i = 0; i < assurances.length; i++) { + res.next(); + assurances[i] = new Assurance(res); + } + this.madeAssurances = assurances; + return assurances; + } + return madeAssurances; + } + + public void invalidateMadeAssurances() { + madeAssurances = null; + } + + public void invalidateReceivedAssurances() { + receivedAssurances = null; + } }