import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; public class PictureGetter implements CallHandler { private final Connection connection; private final String cognitoID; private final String GET_ITEM = "SELECT * FROM Pictures WHERE cognitoID = ?;"; public PictureGetter(Connection connection, String cognitoID) { this.connection = connection; this.cognitoID = cognitoID; } @Override public Object conductAction(Map bodyMap, HashMap queryMap, String cognitoID) throws SQLException { PreparedStatement statement = connection.prepareStatement(GET_ITEM); if (!queryMap.containsKey("id") || !queryMap.get("id").toString().equals("profile")) { throw new IllegalArgumentException("Only profile pictures are currently supported."); } statement.setString(1, cognitoID); System.out.println(statement); ResultSet queryResults = statement.executeQuery(); queryResults.first(); System.out.println(queryResults); Picture retrievedPicture = new Picture(queryResults); // System.out.println(retrievedPicture); return retrievedPicture; } }