@Override
	public List<Recipe> getAllRecipes() {
		try (Connection connection = DriverManager.getConnection(connectionString)) {
			List<Recipe> recipes = new ArrayList<Recipe>();
			Statement statement = connection.createStatement();
			/* TODO: check the impact of fetching everything in one query */
			ResultSet rs = statement.executeQuery("select id from recipe");
			List<Integer> recipeIds = new ArrayList<Integer>();
			while(rs.next()){
				recipeIds.add(rs.getInt("id"));
			}
			connection.close();
			for(int i : recipeIds){
				recipes.add(getRecipeById(i));
			}
			return recipes;
		}
		catch(SQLException ex){
			ex.printStackTrace();
			return null;
		}
	}