INNER CODE UNIT · Java
findAllDogs
righettod/poc-graphql · src/main/java/eu/righettod/graphqlpoc/repository/BusinessDataRepository.java:94
public List<Dog> findAllDogs(boolean onlyFree, int limit) throws Exception {
List<Dog> dogs = null;
String sqlDogAll = "SELECT ID, NAME, VETERINARY_ID FROM DOG LIMIT ?";
String sqlDogOnlyFree = "SELECT ID, NAME FROM DOG WHERE VETERINARY_ID IS NULL LIMIT ?";
String sqlDog = onlyFree ? sqlDogOnlyFree : sqlDogAll;
try (PreparedStatement stmt = this.storageConnection.prepareStatement(sqlDog)) {
stmt.setInt(1, limit);
try (ResultSet rst = stmt.executeQuery()) {
while (rst.next()) {
if (dogs == null) {
dogs = new ArrayList<>();
}
if (onlyFree) {
dogs.add(new Dog(rst.getInt("ID"), rst.getString("NAME"), null));
} else {
dogs.add(new Dog(rst.getInt("ID"), rst.getString("NAME"), this.findVeterinaryById(rst.getInt("VETERINARY_ID"))));
}
}