diff --git a/Lambdas/Lists/Item/src/Item.java b/Lambdas/Lists/Item/src/Item.java index 4c9addf..bfa12a1 100644 --- a/Lambdas/Lists/Item/src/Item.java +++ b/Lambdas/Lists/Item/src/Item.java @@ -1,7 +1,6 @@ import java.math.BigDecimal; import java.sql.ResultSet; import java.sql.SQLException; -import java.time.LocalDateTime; public class Item { Integer productID; @@ -11,7 +10,7 @@ public class Item { BigDecimal price; String imageURL; String department; - LocalDateTime retrievedDate; + long retrievedDate; Integer fetchCounts; public Item(ResultSet itemRow) throws SQLException { @@ -29,7 +28,7 @@ public class Item { System.out.println(imageURL); this.department = itemRow.getString(7); System.out.println(department); - this.retrievedDate = itemRow.getObject(8, LocalDateTime.class); + this.retrievedDate = itemRow.getTimestamp(8).toInstant().toEpochMilli(); System.out.println(retrievedDate); this.fetchCounts = itemRow.getInt(9); System.out.println(fetchCounts); @@ -106,11 +105,11 @@ public class Item { this.department = department; } - public LocalDateTime getRetrievedDate() { + public long getRetrievedDate() { return retrievedDate; } - public void setRetrievedDate(LocalDateTime retrievedDate) { + public void setRetrievedDate(long retrievedDate) { this.retrievedDate = retrievedDate; } diff --git a/Lambdas/Lists/ItemSearch/src/ItemSearcher.java b/Lambdas/Lists/ItemSearch/src/ItemSearcher.java index 33091f8..29bc78c 100644 --- a/Lambdas/Lists/ItemSearch/src/ItemSearcher.java +++ b/Lambdas/Lists/ItemSearch/src/ItemSearcher.java @@ -10,9 +10,9 @@ public class ItemSearcher implements CallHandler { DBConnector connector; String cognitoID; - private final String GET_ITEM_MATCHES = "SELECT * FROM Product WHERE description LIKE %?%"; + private final String GET_ITEM_MATCHES = "SELECT * FROM Product WHERE description LIKE ?"; - ItemSearcher(DBConnector connector, String cognitoID) { + public ItemSearcher(DBConnector connector, String cognitoID) { this.connector = connector; this.cognitoID = cognitoID; } @@ -21,7 +21,7 @@ public class ItemSearcher implements CallHandler { 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")); + getItemMatches.setString(1, "%" + queryParams.get("id") + "%"); System.out.println(getItemMatches); ResultSet searchResults = getItemMatches.executeQuery(); ItemSearch searchResultsObject = new ItemSearch(searchResults); diff --git a/Lambdas/Lists/List/src/ItemEntry.java b/Lambdas/Lists/List/src/ItemEntry.java index f03e910..506be09 100644 --- a/Lambdas/Lists/List/src/ItemEntry.java +++ b/Lambdas/Lists/List/src/ItemEntry.java @@ -6,13 +6,13 @@ public class ItemEntry { Integer listID; Integer productID; Integer quantity; - LocalDateTime addedDate; + long addedDate; Boolean purchased; public ItemEntry(Integer listID, ResultSet listRow) throws SQLException { this.listID = listID; productID = listRow.getInt(1); quantity = listRow.getInt(2); - addedDate = listRow.getObject(3, LocalDateTime.class); + addedDate = listRow.getTimestamp(3).toInstant().toEpochMilli(); purchased = listRow.getBoolean(4); } @@ -32,11 +32,11 @@ public class ItemEntry { this.quantity = quantity; } - public LocalDateTime getAddedDate() { + public long getAddedDate() { return addedDate; } - public void setAddedDate(LocalDateTime addedDate) { + public void setAddedDate(long addedDate) { this.addedDate = addedDate; } diff --git a/Listify/app/src/main/java/com/example/listify/MainActivity.java b/Listify/app/src/main/java/com/example/listify/MainActivity.java index 5590ccd..ec57389 100644 --- a/Listify/app/src/main/java/com/example/listify/MainActivity.java +++ b/Listify/app/src/main/java/com/example/listify/MainActivity.java @@ -14,6 +14,7 @@ import androidx.navigation.ui.AppBarConfiguration; import androidx.navigation.ui.NavigationUI; import com.amplifyframework.auth.AuthException; import com.example.listify.data.Item; +import com.example.listify.data.ItemSearch; import com.example.listify.data.List; import com.example.listify.data.ListEntry; import com.google.android.material.navigation.NavigationView; @@ -21,7 +22,6 @@ import org.json.JSONException; import java.io.IOException; import java.time.Instant; -import java.time.ZoneOffset; import java.util.Arrays; import java.util.Properties; import java.util.Random; @@ -84,7 +84,7 @@ public class MainActivity extends AppCompatActivity { //The name is the only part of this that is used, the rest is generated by the Lambda. List testList = new List(-1, "New List", "user filled by lambda", Instant.now().toEpochMilli()); //Everything except addedDate is used for ItemEntry - ListEntry entry = new ListEntry(1, 1, new Random().nextInt(), Instant.now().atZone(ZoneOffset.UTC).toLocalDateTime(),false); + ListEntry entry = new ListEntry(1, 1, new Random().nextInt(), Instant.now().toEpochMilli(),false); SynchronousReceiver idReceiver = new SynchronousReceiver<>(); try { requestor.postObject(testList, idReceiver, idReceiver); @@ -100,10 +100,13 @@ public class MainActivity extends AppCompatActivity { requestor.getObject("39", List.class, listReceiver, listReceiver); SynchronousReceiver listIdsReceiver = new SynchronousReceiver<>(); requestor.getListOfIds(List.class, listIdsReceiver, listIdsReceiver); + SynchronousReceiver itemSearchReceiver = new SynchronousReceiver<>(); + requestor.getObject("r", ItemSearch.class, itemSearchReceiver, itemSearchReceiver); try { System.out.println(itemReceiver.await()); System.out.println(listReceiver.await()); System.out.println(Arrays.toString(listIdsReceiver.await())); + System.out.println(itemSearchReceiver.await()); } catch (Exception receiverError) { receiverError.printStackTrace(); } diff --git a/Listify/app/src/main/java/com/example/listify/data/Item.java b/Listify/app/src/main/java/com/example/listify/data/Item.java index 07662b5..12fbbb8 100644 --- a/Listify/app/src/main/java/com/example/listify/data/Item.java +++ b/Listify/app/src/main/java/com/example/listify/data/Item.java @@ -1,7 +1,6 @@ package com.example.listify.data; import java.math.BigDecimal; -import java.time.LocalDateTime; public class Item { Integer productID; @@ -11,11 +10,11 @@ public class Item { BigDecimal price; String imageURL; String department; - LocalDateTime retrievedDate; + long retrievedDate; Integer fetchCounts; public Item(Integer productID, Integer chainID, String upc, String description, BigDecimal price, - String imageURL, String department, LocalDateTime retrievedDate, Integer fetchCounts) { + String imageURL, String department, long retrievedDate, Integer fetchCounts) { this.productID = productID; this.chainID = chainID; this.upc = upc; @@ -37,7 +36,7 @@ public class Item { ", price=" + price + ", imageURL='" + imageURL + '\'' + ", department='" + department + '\'' + - ", retrievedDate=" + (retrievedDate == null ? null : retrievedDate) + + ", retrievedDate=" + retrievedDate + ", fetchCounts=" + fetchCounts + '}'; } @@ -98,11 +97,11 @@ public class Item { this.department = department; } - public LocalDateTime getRetrievedDate() { + public long getRetrievedDate() { return retrievedDate; } - public void setRetrievedDate(LocalDateTime retrievedDate) { + public void setRetrievedDate(long retrievedDate) { this.retrievedDate = retrievedDate; } diff --git a/Listify/app/src/main/java/com/example/listify/data/ListEntry.java b/Listify/app/src/main/java/com/example/listify/data/ListEntry.java index 404f649..e482079 100644 --- a/Listify/app/src/main/java/com/example/listify/data/ListEntry.java +++ b/Listify/app/src/main/java/com/example/listify/data/ListEntry.java @@ -1,15 +1,13 @@ package com.example.listify.data; -import java.time.LocalDateTime; - public class ListEntry { Integer listID; Integer productID; Integer quantity; - LocalDateTime addedDate; + long addedDate; Boolean purchased; - public ListEntry(Integer listID, Integer productID, Integer quantity, LocalDateTime addedDate, Boolean purchased) { + public ListEntry(Integer listID, Integer productID, Integer quantity, long addedDate, Boolean purchased) { this.listID = listID; this.productID = productID; this.quantity = quantity; @@ -52,11 +50,11 @@ public class ListEntry { this.quantity = quantity; } - public LocalDateTime getAddedDate() { + public long getAddedDate() { return addedDate; } - public void setAddedDate(LocalDateTime addedDate) { + public void setAddedDate(long addedDate) { this.addedDate = addedDate; }