Skip to content

Commit

Permalink
Merge pull request #2001 from akto-api-security/invite_user_email_mod…
Browse files Browse the repository at this point in the history
…ifications

send mail in separate thread
  • Loading branch information
notshivansh authored Jan 20, 2025
2 parents 91780cc + b277f8f commit ba6c63f
Showing 1 changed file with 15 additions and 3 deletions.
18 changes: 15 additions & 3 deletions apps/dashboard/src/main/java/com/akto/action/InviteUserAction.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
import java.security.NoSuchAlgorithmException;
import java.security.spec.InvalidKeySpecException;
import java.util.*;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class InviteUserAction extends UserAction{

Expand All @@ -36,6 +38,7 @@ public class InviteUserAction extends UserAction{
public static final String AKTO_DOMAIN = "akto.io";

public static Map<String, String> commonOrganisationsMap = new HashMap<>();
private static final ExecutorService executor = Executors.newFixedThreadPool(1);

public static String validateEmail(String email, String adminLogin) {
if (email == null) return INVALID_EMAIL_ERROR;
Expand Down Expand Up @@ -161,15 +164,24 @@ public String execute() {

String inviteFrom = getSUser().getName();
Mail email = SendgridEmail.getInstance().buildInvitationEmail(inviteeName, inviteeEmail, inviteFrom, finalInviteCode);
if (!DashboardMode.isOnPremDeployment()) {
sendInviteEmail(email);
} else {
executor.submit(() -> {
sendInviteEmail(email);
});
}

return Action.SUCCESS.toUpperCase();
}

private void sendInviteEmail(Mail email) {
try {
SendgridEmail.getInstance().send(email);
} catch (IOException e) {
loggerMaker.errorAndAddToDb("invite email sending failed" + e.getMessage(), LoggerMaker.LogDb.DASHBOARD);
e.printStackTrace();
// return ERROR.toUpperCase();
}

return Action.SUCCESS.toUpperCase();
}

private String invitationCodeToDelete;
Expand Down

0 comments on commit ba6c63f

Please sign in to comment.