[LIB-5] Collection empty objects,reporting and serializable
[snooker-score-api.git] / src / main / java / org / hedgecode / snooker / json / JsonPlayers.java
index 26c68e2..2ba59d3 100644 (file)
@@ -30,6 +30,8 @@ import org.hedgecode.snooker.compare.PlayerComparators;
  */
 public class JsonPlayers extends JsonCollectionEntity<Player> implements Players {
 
+    private static final JsonPlayers EMPTY = new JsonPlayers(new Player[0]);
+
     protected JsonPlayers(Player[] entities) {
         super(entities);
     }
@@ -44,7 +46,7 @@ public class JsonPlayers extends JsonCollectionEntity<Player> implements Players
         for (Player player : this)
             if (player.type() == type)
                 players.add(player);
-        return players.isEmpty() ? null : new JsonPlayers(players);
+        return players.isEmpty() ? EMPTY : new JsonPlayers(players);
     }
 
     @Override
@@ -53,7 +55,7 @@ public class JsonPlayers extends JsonCollectionEntity<Player> implements Players
         for (Player player : this)
             if (player.shortName().contains(name))
                 players.add(player);
-        return players.isEmpty() ? null : new JsonPlayers(players);
+        return players.isEmpty() ? EMPTY : new JsonPlayers(players);
     }
 
     @Override
@@ -62,7 +64,7 @@ public class JsonPlayers extends JsonCollectionEntity<Player> implements Players
         for (Player player : this)
             if (player.nationality().equals(nationality))
                 players.add(player);
-        return players.isEmpty() ? null : new JsonPlayers(players);
+        return players.isEmpty() ? EMPTY : new JsonPlayers(players);
     }
 
     @Override
@@ -71,7 +73,7 @@ public class JsonPlayers extends JsonCollectionEntity<Player> implements Players
         for (Player player : this)
             if (player.nationality().equals(sex))
                 players.add(player);
-        return players.isEmpty() ? null : new JsonPlayers(players);
+        return players.isEmpty() ? EMPTY : new JsonPlayers(players);
     }
 
     @Override