public void fillRankedStats(LeagueSummoner summoner) throws LeagueException {
   TypedObject obj =
       call(
           "getAggregatedStats",
           new Object[] {
             summoner.getAccountId(), SUMMONERS_RIFT, LeagueCompetitiveSeason.CURRENT.toString()
           });
   summoner.setRankedStats(new LeagueSummonerRankedStats(obj.getTO("body")));
 }
  public void fillRankedStats(
      final LeagueSummoner summoner, final Callback<LeagueSummoner> callback) {
    callAsynchronously(
        "getAggregatedStats",
        new Object[] {
          summoner.getAccountId(), SUMMONERS_RIFT, LeagueCompetitiveSeason.CURRENT.toString()
        },
        new Callback<TypedObject>() {
          public void onCompletion(TypedObject obj) {
            try {
              summoner.setRankedStats(new LeagueSummonerRankedStats(obj.getTO("body")));
              callback.onCompletion(summoner);
            } catch (Exception ex) {
              callback.onError(ex);
            }
          }

          public void onError(Exception ex) {
            callback.onError(ex);
          }
        });
  }