User delete lambda

This commit is contained in:
Clayton Wilson 2020-10-08 17:49:50 -04:00
parent 925a249b4c
commit c5bb117136

View File

@ -1,75 +1,73 @@
import com.amazonaws.services.cognitoidp.AWSCognitoIdentityProvider;
import com.amazonaws.services.cognitoidp.AWSCognitoIdentityProviderClientBuilder;
import com.amazonaws.services.cognitoidp.model.AdminDeleteUserRequest;
import com.amazonaws.services.cognitoidp.model.AdminUserGlobalSignOutRequest;
import java.io.IOException;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.HashMap; import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.Properties;
public class UserDeleter implements CallHandler { public class UserDeleter implements CallHandler {
private DBConnector connector; private Connection connection;
private String cognitoID; private String cognitoID;
//private final String REMOVE_FROM_LIST = "DELETE FROM ListProduct WHERE (ProductID = ? AND ListID = ?);";
private final String GET_LISTS = "SELECT * FROM List WHERE (owner = ?);"; private final String GET_LISTS = "SELECT * FROM List WHERE (owner = ?);";
private final String DELETE_LIST_PRODUCT = "DELETE FROM ListProduct WHERE (listID = ?);";
private final String DELETE_LISTS = "DELETE FROM List WHERE (owner = ?);";
public UserDeleter(DBConnector connector, String cognitoID) { public UserDeleter(Connection connection, String cognitoID) {
this.connector = connector; this.connection = connection;
this.cognitoID = cognitoID; this.cognitoID = cognitoID;
} }
public Object conductAction(Map<String, Object> bodyMap, HashMap<String, String> queryString, String cognitoID) throws SQLException { public Object conductAction(Map<String, Object> bodyMap, HashMap<String, String> queryString, String cognitoID) throws SQLException {
// AWSCognitoIdentityProvider awsCognitoIdentityProvider = AWSCognitoIdentityProviderClientBuilder.defaultClient(); AWSCognitoIdentityProvider awsCognitoIdentityProvider = AWSCognitoIdentityProviderClientBuilder.defaultClient();
// Properties cognitoProperties; Properties cognitoProperties;
// try { try {
// cognitoProperties = DBConnector.loadProperties("cognitoProperties.json"); cognitoProperties = DBConnector.loadProperties("cognitoProperties.json");
// } catch (IOException e) { } catch (IOException e) {
// e.printStackTrace(); e.printStackTrace();
// return null; return null;
// } }
// String userPoolId = cognitoProperties.get("userPoolId").toString(); String userPoolId = cognitoProperties.get("userPoolId").toString();
// System.out.println(userPoolId); System.out.println(userPoolId);
// AdminUserGlobalSignOutRequest adminUserGlobalSignOutRequest = new AdminUserGlobalSignOutRequest().withUserPoolId(userPoolId); AdminUserGlobalSignOutRequest adminUserGlobalSignOutRequest = new AdminUserGlobalSignOutRequest().withUserPoolId(userPoolId);
// adminUserGlobalSignOutRequest.setUsername(cognitoID); adminUserGlobalSignOutRequest.setUsername(cognitoID);
// System.out.println(adminUserGlobalSignOutRequest); System.out.println(adminUserGlobalSignOutRequest);
// awsCognitoIdentityProvider.adminUserGlobalSignOut(adminUserGlobalSignOutRequest); awsCognitoIdentityProvider.adminUserGlobalSignOut(adminUserGlobalSignOutRequest);
// AdminDeleteUserRequest adminDeleteUserRequest = new AdminDeleteUserRequest().withUserPoolId(userPoolId); AdminDeleteUserRequest adminDeleteUserRequest = new AdminDeleteUserRequest().withUserPoolId(userPoolId);
// adminDeleteUserRequest.setUsername(cognitoID); adminDeleteUserRequest.setUsername(cognitoID);
// System.out.println(adminDeleteUserRequest); System.out.println(adminDeleteUserRequest);
// awsCognitoIdentityProvider.adminDeleteUser(adminDeleteUserRequest); awsCognitoIdentityProvider.adminDeleteUser(adminDeleteUserRequest);
Connection connection = connector.getConnection(); try {
// try {
PreparedStatement statement = connection.prepareStatement(GET_LISTS); PreparedStatement statement = connection.prepareStatement(GET_LISTS);
statement.setString(1, cognitoID); statement.setString(1, cognitoID);
System.out.println(statement); System.out.println(statement);
ResultSet userLists = statement.executeQuery(); ResultSet userLists = statement.executeQuery();
while (userLists.next()) { while (userLists.next()) {
int listID = userLists.getInt("listID"); int listID = userLists.getInt("listID");
System.out.println(String.format("%d", listID));
statement = connection.prepareStatement(DELETE_LIST_PRODUCT);
statement.setInt(1, listID);
System.out.println(statement);
statement.executeQuery();
} }
// connection.commit(); statement = connection.prepareStatement(DELETE_LISTS);
// } finally { statement.setString(1, cognitoID);
// connection.close(); System.out.println(statement);
// } statement.executeQuery();
connection.commit();
} finally {
connection.close();
}
return null; return null;
// return null;
// Connection connection = connector.getConnection();
// try {
// PreparedStatement statement = connection.prepareStatement(REMOVE_FROM_LIST);
// statement.setInt(1, (Integer) bodyMap.get("ProductID"));
// statement.setInt(2, (Integer) bodyMap.get("ListID"));
// System.out.println(statement);
// statement.executeUpdate();
// connection.commit();
// } finally {
// connection.close();
// }
// return null;
} }
} }