use of org.lanternpowered.server.entity.living.player.ProxyUser in project LanternServer by LanternPowered.
the class LanternUserStorageService method getUser.
@Nullable
private ProxyUser getUser(UUID uniqueId) {
checkNotNull(uniqueId, "uniqueId");
ProxyUser user = this.userCache.getIfPresent(uniqueId);
if (user != null) {
return user;
}
user = getFromOnlinePlayer(uniqueId);
if (user == null) {
user = getFromWhitelistService(uniqueId);
if (user == null) {
user = getFromBanService(uniqueId);
if (user == null) {
user = getFromOpsConfig(uniqueId);
// included in the player data by default.
if (user == null) {
user = getFromStoredData(uniqueId);
}
}
}
}
if (user != null) {
this.userCache.put(uniqueId, user);
}
return user;
}
use of org.lanternpowered.server.entity.living.player.ProxyUser in project LanternServer by LanternPowered.
the class LanternUserStorageService method getFromBanService.
/**
* Attempts to get a {@link User} from the {@link BanService}.
*
* @param uniqueId The unique id
* @return The user
*/
@Nullable
private ProxyUser getFromBanService(UUID uniqueId) {
final LanternGameProfile gameProfile;
final BanService banService = this.banService.get();
if (banService instanceof BanConfig) {
gameProfile = ((BanConfig) banService).getEntryByUUID(uniqueId).map(entry -> ((BanEntry.Profile) entry).getProfile()).orElse(null);
} else {
gameProfile = banService.getBanFor(new LanternGameProfile(uniqueId, null)).map(entry -> ((BanEntry.Profile) entry).getProfile()).orElse(null);
}
return gameProfile == null ? null : new ProxyUser(gameProfile);
}
use of org.lanternpowered.server.entity.living.player.ProxyUser in project LanternServer by LanternPowered.
the class LanternUserStorageService method getFromWhitelistService.
/**
* Attempts to get a {@link User} from the {@link WhitelistService}.
*
* @param uniqueId The unique id
* @return The user
*/
@Nullable
private ProxyUser getFromWhitelistService(UUID uniqueId) {
final LanternGameProfile gameProfile;
final WhitelistService whitelistService = this.whitelistService.get();
if (whitelistService instanceof WhitelistConfig) {
gameProfile = ((WhitelistConfig) whitelistService).getEntryByUUID(uniqueId).map(UserEntry::getProfile).orElse(null);
} else {
gameProfile = (LanternGameProfile) whitelistService.getWhitelistedProfiles().stream().filter(profile -> profile.getUniqueId().equals(uniqueId)).findFirst().orElse(null);
}
return gameProfile == null ? null : new ProxyUser(gameProfile);
}
Aggregations