Search in sources :

Example 1 with BanConfig

use of org.lanternpowered.server.config.user.ban.BanConfig 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);
}
Also used : LanternGameProfile(org.lanternpowered.server.profile.LanternGameProfile) BanConfig(org.lanternpowered.server.config.user.ban.BanConfig) ProxyUser(org.lanternpowered.server.entity.living.player.ProxyUser) BanService(org.spongepowered.api.service.ban.BanService) BanEntry(org.lanternpowered.server.config.user.ban.BanEntry) Nullable(javax.annotation.Nullable)

Aggregations

Nullable (javax.annotation.Nullable)1 BanConfig (org.lanternpowered.server.config.user.ban.BanConfig)1 BanEntry (org.lanternpowered.server.config.user.ban.BanEntry)1 ProxyUser (org.lanternpowered.server.entity.living.player.ProxyUser)1 LanternGameProfile (org.lanternpowered.server.profile.LanternGameProfile)1 BanService (org.spongepowered.api.service.ban.BanService)1