+ return supporter;
+ }
+
+ public User getAssurer(int i) {
+ if (assurers[i] != null) {
+ return assurers[i];
+ }
+ try {
+ User u = createAssurer(i);
+ assurers[i] = u;
+
+ } catch (ReflectiveOperationException | GigiApiException e) {
+ e.printStackTrace();
+ }
+ return assurers[i];
+ }
+
+ private User createAssurer(int i) throws GigiApiException, IllegalAccessException {
+ try (GigiPreparedStatement ps = new GigiPreparedStatement("INSERT INTO `notary` SET `from`=?, `to`=?, `points`=?, `location`=?, `date`=?, `country`=?")) {
+ String mail = "test-assurer" + i + "@example.com";
+ User u = User.getByEmail(mail);
+ if (u == null) {
+ System.out.println("Creating RA-Agent");
+ createUser(mail);
+ u = User.getByEmail(mail);
+ passCATS(u, CATSType.ASSURER_CHALLENGE);
+ ps.setInt(1, u.getId());
+ ps.setInt(2, u.getPreferredName().getId());
+ ps.setInt(3, 100);
+ ps.setString(4, "Manager init code");
+ ps.setString(5, "1990-01-01");
+ ps.setString(6, getRandomCountry().getCode());
+ ps.execute();
+ }
+ return u;
+ }