All Downloads are FREE. Search and download functionalities are using the official Maven repository.

uk.co.mruoc.nac.api.converter.ApiPlayerConverter Maven / Gradle / Ivy

package uk.co.mruoc.nac.api.converter;

import java.util.Collection;
import lombok.RequiredArgsConstructor;
import uk.co.mruoc.nac.api.dto.ApiPlayer;
import uk.co.mruoc.nac.entities.Player;
import uk.co.mruoc.nac.entities.Players;

@RequiredArgsConstructor
public class ApiPlayerConverter {

  private final ApiUserConverter userConverter;

  public ApiPlayerConverter() {
    this(new ApiUserConverter());
  }

  public Collection toApiPlayers(Players players) {
    return players.stream().map(this::toApiPlayer).toList();
  }

  public ApiPlayer toApiPlayer(Player player) {
    return ApiPlayer.builder()
        .user(userConverter.toApiUser(player.getUser()))
        .token(player.getToken())
        .build();
  }

  public Collection toMinimalPlayers(Players players) {
    return players.stream().map(this::toMinimalPlayer).toList();
  }

  private ApiPlayer toMinimalPlayer(Player player) {
    return ApiPlayer.builder()
        .user(userConverter.toMinimalApiUser(player.getUser()))
        .token(player.getToken())
        .build();
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy