diff --git a/Lambdas/Lists/Item/src/Item.java b/Lambdas/Lists/Item/src/Item.java index dcdbdd6..4c9addf 100644 --- a/Lambdas/Lists/Item/src/Item.java +++ b/Lambdas/Lists/Item/src/Item.java @@ -14,7 +14,7 @@ public class Item { LocalDateTime retrievedDate; Integer fetchCounts; - Item(ResultSet itemRow) throws SQLException { + public Item(ResultSet itemRow) throws SQLException { this.productID = itemRow.getInt(1); System.out.println(this.productID); this.chainID = itemRow.getInt(2); diff --git a/Lambdas/Lists/ItemSearch/src/ItemSearch.java b/Lambdas/Lists/ItemSearch/src/ItemSearch.java new file mode 100644 index 0000000..17b701a --- /dev/null +++ b/Lambdas/Lists/ItemSearch/src/ItemSearch.java @@ -0,0 +1,29 @@ +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ArrayList; + +public class ItemSearch { + ArrayList results; + + ItemSearch(ResultSet searchResults) throws SQLException { + results = new ArrayList<>(); + while (searchResults.next()) { + results.add(new Item(searchResults)); + } + } + + @Override + public String toString() { + return "ItemSearch{" + + "results=" + results + + '}'; + } + + public ArrayList getResults() { + return results; + } + + public void setResults(ArrayList results) { + this.results = results; + } +} diff --git a/Lambdas/Lists/ItemSearch/src/ItemSearchGET.java b/Lambdas/Lists/ItemSearch/src/ItemSearchGET.java new file mode 100644 index 0000000..14e146d --- /dev/null +++ b/Lambdas/Lists/ItemSearch/src/ItemSearchGET.java @@ -0,0 +1,11 @@ +import com.amazonaws.services.lambda.runtime.Context; +import com.amazonaws.services.lambda.runtime.RequestHandler; + +import java.util.Map; + +public class ItemSearchGET implements RequestHandler, Object> { + + public Object handleRequest(Map inputMap, Context unfilled) { + return BasicHandler.handleRequest(inputMap, unfilled, ItemSearcher.class); + } +} diff --git a/Lambdas/Lists/ItemSearch/src/ItemSearcher.java b/Lambdas/Lists/ItemSearch/src/ItemSearcher.java new file mode 100644 index 0000000..33091f8 --- /dev/null +++ b/Lambdas/Lists/ItemSearch/src/ItemSearcher.java @@ -0,0 +1,32 @@ +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 ItemSearcher implements CallHandler { + + DBConnector connector; + String cognitoID; + + private final String GET_ITEM_MATCHES = "SELECT * FROM Product WHERE description LIKE %?%"; + + ItemSearcher(DBConnector connector, String cognitoID) { + this.connector = connector; + this.cognitoID = cognitoID; + } + + @Override + public Object conductAction(Map body, HashMap queryParams, String s) throws SQLException { + try (Connection connection = connector.getConnection()) { + PreparedStatement getItemMatches = connection.prepareStatement(GET_ITEM_MATCHES); + getItemMatches.setString(1, queryParams.get("id")); + System.out.println(getItemMatches); + ResultSet searchResults = getItemMatches.executeQuery(); + ItemSearch searchResultsObject = new ItemSearch(searchResults); + System.out.println(searchResultsObject); + return searchResultsObject; + } + } +} diff --git a/Listify/app/src/main/java/com/example/listify/data/ItemSearch.java b/Listify/app/src/main/java/com/example/listify/data/ItemSearch.java new file mode 100644 index 0000000..8d7874d --- /dev/null +++ b/Listify/app/src/main/java/com/example/listify/data/ItemSearch.java @@ -0,0 +1,27 @@ +package com.example.listify.data; + +import java.util.ArrayList; + +public class ItemSearch { + ArrayList results; + + public ItemSearch(ArrayList results) { + this.results = results; + } + + @Override + public String toString() { + return "ItemSearch{" + + "results=" + results + + '}'; + } + + public ArrayList getResults() { + return results; + } + + public void setResults(ArrayList results) { + this.results = results; + } +} +