use of no.stelar7.api.r4j.pojo.lol.summoner.Summoner in project L4J8 by stelar7.
the class SummonerBuilder method get.
/**
* gets a summoner based on the parameters passed to the builder
*
* @return Summoner
*/
public Summoner get() {
DataCallBuilder builder = new DataCallBuilder().withPlatform(this.platform);
URLEndpoint endpoint = null;
if (accId > 0) {
builder.withURLParameter(Constants.ACCOUNT_ID_PLACEHOLDER, String.valueOf(this.accId));
endpoint = URLEndpoint.V3_SUMMONER_BY_ACCOUNT;
}
if (sumId > 0) {
builder.withURLParameter(Constants.SUMMONER_ID_PLACEHOLDER, String.valueOf(this.sumId));
endpoint = URLEndpoint.V3_SUMMONER_BY_ID;
}
if (name.length() > 0) {
builder.withURLParameter(Constants.SUMMONER_NAME_PLACEHOLDER, Utils.normalizeSummonerName(this.name));
endpoint = URLEndpoint.V3_SUMMONER_BY_NAME;
}
builder.withEndpoint(endpoint);
Optional chl = DataCall.getCacheProvider().get(endpoint, this.platform, this.accId, this.sumId, this.name);
if (chl.isPresent()) {
return (Summoner) chl.get();
}
Object sob = builder.build();
if (sob instanceof Pair) {
return null;
}
DataCall.getCacheProvider().store(endpoint, sob, this.platform, this.accId, this.sumId, this.name);
return (Summoner) sob;
}
use of no.stelar7.api.r4j.pojo.lol.summoner.Summoner in project L4J8 by stelar7.
the class DivTests method test.
@Test
public void test() {
R4J api = new R4J(SecretFile.CREDS);
String user = "stelar7";
LeagueShard region = LeagueShard.EUW1;
Summoner summoner = new SummonerBuilder().withPlatform(region).withName(user).get();
Map<Integer, StaticChampion> champData = api.getDDragonAPI().getChampions();
// pfp
String pfp = ImageAPI.getInstance().getProfileIcon(region, user);
// name and lv
int level = summoner.getSummonerLevel();
String name = summoner.getName();
// most recent game
List<String> matches = summoner.getLeagueGames().get();
LOLMatch match = LOLMatch.get(region, matches.get(0));
MatchParticipant self = match.getParticipants().stream().filter(p -> p.getPuuid().equals(summoner.getPUUID())).findFirst().get();
StaticChampion champion = champData.get(self.getChampionId());
MatchPerks summs = self.getPerks();
boolean won = self.didWin();
System.out.println("Profile icon: " + pfp);
System.out.println(name + ", Level " + level);
System.out.println();
System.out.format(name + " %s their most recent game.", won ? "won" : "lost");
System.out.println();
System.out.println("They were playing " + self.getChampionSelectLane() + " " + champion.getName());
}
use of no.stelar7.api.r4j.pojo.lol.summoner.Summoner in project L4J8 by stelar7.
the class CurrentGameTest method testCurrentGameFame.
@Test
public void testCurrentGameFame() {
final R4J r4J = new R4J(SecretFile.CREDS);
Summoner s = Summoner.byName(LeagueShard.EUW1, "Klospülautomat");
SpectatorGameInfo game = s.getCurrentGame();
System.out.format("%s is %sin game%n", s.getName(), game != null ? "" : "not ");
}
use of no.stelar7.api.r4j.pojo.lol.summoner.Summoner in project L4J8 by stelar7.
the class CurrentGameTest method testCurrentGame.
@Test
public void testCurrentGame() {
final R4J r4J = new R4J(SecretFile.CREDS);
SpectatorBuilder sb = new SpectatorBuilder().withPlatform(LeagueShard.EUW1);
// Get a game in progess
final List<SpectatorGameInfo> game = sb.getFeaturedGames();
// Get a summoner from that game
final String name = game.get(0).getParticipants().get(0).getSummonerName();
final Summoner sum = new SummonerBuilder().withPlatform(game.get(0).getPlatform()).withName(name).get();
// Get game info
final SpectatorGameInfo currentGame = sb.withSummonerId(sum.getSummonerId()).getCurrentGame();
if (currentGame != null) {
doAssertions.accept(currentGame);
}
}
use of no.stelar7.api.r4j.pojo.lol.summoner.Summoner in project L4J8 by stelar7.
the class SummonerTest method testByPUUID.
@Test
public void testByPUUID() {
String id = new SpectatorBuilder().withPlatform(LeagueShard.EUW1).getFeaturedGames().get(0).getParticipants().get(0).getSummonerName();
Summoner s = new SummonerBuilder().withPlatform(LeagueShard.EUW1).withName(id).get();
Summoner optional = new SummonerBuilder().withPlatform(s.getPlatform()).withPUUID(s.getPUUID()).get();
doAssertions.accept(optional);
}
Aggregations