1 package org.cacert.gigi.dbObjects;
5 import org.cacert.gigi.GigiApiException;
6 import org.cacert.gigi.database.DatabaseConnection;
7 import org.cacert.gigi.database.GigiPreparedStatement;
9 public class SupportedUser {
11 private User target, supporter;
13 private String ticket;
15 public SupportedUser(User target, User supporter, String ticket) {
16 this.supporter = supporter;
21 public void setName(String fname, String mname, String lname, String suffix) throws GigiApiException {
22 writeSELog("SE Name change");
23 target.setName(new Name(fname, lname, mname, suffix));
26 public void setDob(Date dob) throws GigiApiException {
27 writeSELog("SE dob change");
31 public void revokeAllCertificates() throws GigiApiException {
32 writeSELog("SE Revoke certificates");
33 Certificate[] certs = target.getCertificates(false);
34 for (int i = 0; i < certs.length; i++) {
39 private void writeSELog(String type) throws GigiApiException {
41 throw new GigiApiException("No ticket set!");
43 GigiPreparedStatement prep = DatabaseConnection.getInstance().prepare("INSERT INTO adminLog SET uid=?, admin=?, type=?, information=?");
44 prep.setInt(1, target.getId());
45 prep.setInt(2, supporter.getId());
46 prep.setString(3, type);
47 prep.setString(4, ticket);
52 return target.getId();
55 public Certificate[] getCertificates(boolean includeRevoked) {
56 return target.getCertificates(includeRevoked);
59 public String getTicket() {
63 public User getTargetUser() {