Log out user when their user is deleted

This commit is contained in:
Risto Lahtela 2020-05-07 11:32:29 +03:00
parent 1bb3510e4c
commit bf43c7922a

View File

@ -17,6 +17,8 @@
package com.djrapitops.plan.storage.database.transactions.commands; package com.djrapitops.plan.storage.database.transactions.commands;
import com.djrapitops.plan.delivery.domain.WebUser; import com.djrapitops.plan.delivery.domain.WebUser;
import com.djrapitops.plan.delivery.webserver.auth.ActiveCookieStore;
import com.djrapitops.plan.storage.database.queries.objects.WebUserQueries;
import com.djrapitops.plan.storage.database.sql.tables.SecurityTable; import com.djrapitops.plan.storage.database.sql.tables.SecurityTable;
import com.djrapitops.plan.storage.database.transactions.ExecStatement; import com.djrapitops.plan.storage.database.transactions.ExecStatement;
import com.djrapitops.plan.storage.database.transactions.Transaction; import com.djrapitops.plan.storage.database.transactions.Transaction;
@ -42,6 +44,9 @@ public class RemoveWebUserTransaction extends Transaction {
@Override @Override
protected void performOperations() { protected void performOperations() {
// Logout the user
query(WebUserQueries.fetchUser(username)).ifPresent(ActiveCookieStore::removeCookie);
String sql = DELETE_FROM + SecurityTable.TABLE_NAME + WHERE + SecurityTable.USERNAME + "=?"; String sql = DELETE_FROM + SecurityTable.TABLE_NAME + WHERE + SecurityTable.USERNAME + "=?";
execute(new ExecStatement(sql) { execute(new ExecStatement(sql) {