fix npe and maybe fix null users????????
All checks were successful
Deploy to Dokku / docker (ubuntu-latest) (push) Successful in 39s
All checks were successful
Deploy to Dokku / docker (ubuntu-latest) (push) Successful in 39s
This commit is contained in:
41
src/main/java/cc/fascinated/bat/common/UserUtils.java
Normal file
41
src/main/java/cc/fascinated/bat/common/UserUtils.java
Normal file
@ -0,0 +1,41 @@
|
||||
package cc.fascinated.bat.common;
|
||||
|
||||
import cc.fascinated.bat.service.DiscordService;
|
||||
import lombok.extern.log4j.Log4j2;
|
||||
import net.dv8tion.jda.api.entities.User;
|
||||
|
||||
/**
|
||||
* @author Fascinated (fascinated7)
|
||||
*/
|
||||
@Log4j2
|
||||
public class UserUtils {
|
||||
/**
|
||||
* Gets the user with the given id
|
||||
*
|
||||
* @param id the id of the user
|
||||
* @param retries the amount of retries
|
||||
* @return the user with the given id
|
||||
*/
|
||||
private static User getUser(String id, int retries) {
|
||||
if (retries >= 25) {
|
||||
log.error("Failed to find user \"{}\" after {} retries.", id, retries);
|
||||
return null;
|
||||
}
|
||||
User user = DiscordService.JDA.getUserById(id);
|
||||
if (user == null) {
|
||||
return getUser(id, retries + 1);
|
||||
}
|
||||
log.info("Found user \"{}\" after {} retries.", id, retries);
|
||||
return user;
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the user with the given id
|
||||
*
|
||||
* @param id the id of the user
|
||||
* @return the user with the given id
|
||||
*/
|
||||
public static User getUser(String id) {
|
||||
return getUser(id, 0);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user