+ private static void printPlayer(Player player) {
+ SnookerScoreConsole.console(
+ String.format(
+ "%s%s %s [%s] (%s)",
+ INDENT,
+ player.surnameFirst() ? player.lastName() : player.firstName(),
+ player.surnameFirst() ? player.firstName() : player.lastName(),
+ SnookerDateUtils.formatDate(player.born()),
+ player.nationality()
+ )
+ );
+ }
+
+ private static void printMatch(Match match) throws APIException {
+ SnookerScoreAPI api = Snooker.uncachedAPI();
+ Player player1 = api.getPlayer(match.player1Id());
+ Player player2 = api.getPlayer(match.player2Id());
+ SnookerScoreConsole.console(
+ String.format(
+ "%s[%s %s - %s] %s %s %s-%s %s %s",
+ INDENT,
+ SnookerDateUtils.formatDate(match.startDate()),
+ SnookerDateUtils.formatTime(match.startDate()),
+ SnookerDateUtils.formatTime(match.endDate()),
+ player1.surnameFirst() ? player1.lastName() : player1.firstName(),
+ player1.surnameFirst() ? player1.firstName() : player1.lastName(),
+ match.score1(),
+ match.score2(),
+ player2.surnameFirst() ? player2.lastName() : player2.firstName(),
+ player2.surnameFirst() ? player2.firstName() : player2.lastName()
+ )
+ );
+ }
+
+ private static void printRounds(Rounds rounds, Event event) throws APIException {
+ if (!rounds.isEmpty()) {
+ rounds.sortByRound();
+ if (event != null) {
+ SnookerScoreConsole.console(
+ String.format("%s%s %s:", INDENT, EVENT_ROUNDS, event.name())
+ );
+ }
+ for (Round round : rounds) {
+ printRound(round, event, INDENT.concat(INDENT));
+ }
+ SnookerScoreConsole.delimiter();
+ }
+ }
+
+ private static void printRound(Round round, Event event, String indent) throws APIException {
+ if (event == null || event.getId() != round.eventId()) {
+ SnookerScoreAPI api = Snooker.uncachedAPI();
+ Event roundEvent = api.getEvent(round.eventId());
+ SnookerScoreConsole.console(
+ String.format(
+ "%s%s. %s (%s)",
+ indent,
+ round.round(),
+ round.roundName(),
+ roundEvent.name()
+ )
+ );
+ } else {
+ SnookerScoreConsole.console(
+ String.format(
+ "%s%s. %s",
+ indent,
+ round.round(),
+ round.roundName()
+ )
+ );
+ }
+ }
+
+ private static void printSeedings(Seedings seedings, Event event) throws APIException {
+ if (!seedings.isEmpty()) {
+ seedings.sortBySeeding();
+ if (event != null) {
+ SnookerScoreConsole.console(
+ String.format(
+ "%s%s %s (top %d):",
+ INDENT,
+ EVENT_SEEDING,
+ event.name(),
+ TOP_SEEDING_COUNT
+ )
+ );
+ }
+ int count = 0;
+ for (Seeding seeding : seedings) {
+ printSeeding(seeding, INDENT.concat(INDENT));
+ ++count;
+ if (count >= TOP_SEEDING_COUNT) break;
+ }
+ SnookerScoreConsole.delimiter();