LinkedList<DomainPingConfiguration> configs = this.configs;
if (configs == null) {
configs = new LinkedList<>();
- try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT id FROM pingconfig WHERE domainid=?")) {
+ try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT id FROM pingconfig WHERE domainid=? AND `deleted` IS NULL")) {
ps.setInt(1, id);
GigiResultSet rs = ps.executeQuery();
while (rs.next()) {
configs = null;
}
+ public void clearPings() throws GigiApiException {
+ try (GigiPreparedStatement ps = new GigiPreparedStatement("UPDATE `pingconfig` SET `deleted`=CURRENT_TIMESTAMP WHERE `deleted` is NULL AND `domainid`=?")) {
+ ps.setInt(1, id);
+ ps.execute();
+ }
+ configs = null;
+ }
+
public synchronized void verify(String hash) throws GigiApiException {
try (GigiPreparedStatement ps = new GigiPreparedStatement("UPDATE `domainPinglog` SET `state`='success' WHERE `challenge`=? AND `state`='open' AND `configId` IN (SELECT `id` FROM `pingconfig` WHERE `domainid`=? AND `type`='email')")) {
ps.setString(1, hash);
return em;
}
- public static int searchUserIdByDomain(String domain) {
- try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT `memid` FROM `domains` WHERE `domain` = ?")) {
+ public static Domain searchUserIdByDomain(String domain) {
+ try (GigiPreparedStatement ps = new GigiPreparedStatement("SELECT `id` FROM `domains` WHERE `domain` = ?")) {
ps.setString(1, domain);
GigiResultSet res = ps.executeQuery();
if (res.next()) {
- return res.getInt(1);
+ return getById(res.getInt(1));
} else {
- return -1;
+ return null;
}
}
}