diff options
| author | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2024-11-21 23:54:32 +0530 | 
|---|---|---|
| committer | Vidhu Kant Sharma <vidhukant@vidhukant.com> | 2024-11-21 23:54:32 +0530 | 
| commit | 3b16f36d497151ea1628491a057da292855a46f1 (patch) | |
| tree | 65f15c93f550f86a64ff58816a3c8dbf11f6cc3c | |
| parent | 279415dfe3386e624727d204b304430299d4a6cf (diff) | |
| -rw-r--r-- | src/Main.java | 2 | ||||
| -rw-r--r-- | src/Store/Book.java | 72 | ||||
| -rw-r--r-- | src/Store/User.java | 66 | 
3 files changed, 91 insertions, 49 deletions
| diff --git a/src/Main.java b/src/Main.java index 5fd5a20..8215973 100644 --- a/src/Main.java +++ b/src/Main.java @@ -1,7 +1,7 @@  import Store.ConnectionHandler;  import UI.MainWindow;  import com.github.weisj.darklaf.LafManager; -import com.github.weisj.darklaf.theme.; +import com.github.weisj.darklaf.theme.SolarizedLightTheme;  import java.awt.*; diff --git a/src/Store/Book.java b/src/Store/Book.java index 4232d77..fe2d63e 100644 --- a/src/Store/Book.java +++ b/src/Store/Book.java @@ -164,38 +164,66 @@ public class Book {      public static DataListener<JSONMessage> getListHandler(boolean availableOnly) {          return ((client, data, ackSender) -> { -            ArrayList<Book> books = getAll(availableOnly); -            client.sendEvent(availableOnly ? "availableBooksList" : "allBooksList", books); +            Thread t = new Thread(() -> { +                ArrayList<Book> books = null; +                try { +                    books = getAll(availableOnly); +                } catch (SQLException e) { +                    throw new RuntimeException(e); +                } +                client.sendEvent(availableOnly ? "availableBooksList" : "allBooksList", books); +            }); + +            t.start(); +            t.join();          });      }      public static DataListener<JSONMessage> issueHandler() {          return ((client, data, ackSender) -> { -            Map d = data.getData(); - -            int userId = (int) d.get("id"); -            Book b = new Book((int) d.get("bookId")); - -            if (b.issue(userId)) { -                client.sendEvent("issued"); -            } else { -                client.sendEvent("alreadyIssued"); -            } +            Thread t = new Thread(() -> { +                Map d = data.getData(); + +                int userId = (int) d.get("id"); +                Book b = new Book((int) d.get("bookId")); + +                try { +                    if (b.issue(userId)) { +                        client.sendEvent("issued"); +                    } else { +                        client.sendEvent("alreadyIssued"); +                    } +                } catch (SQLException e) { +                    throw new RuntimeException(e); +                } +            }); + +            t.start(); +            t.join();          });      }      public static DataListener<JSONMessage> returnHandler() {          return ((client, data, ackSender) -> { -            Map d = data.getData(); - -            int userId = (int) d.get("id"); -            Book b = new Book((int) d.get("bookId")); - -            if (b.returnBook(userId)) { -                client.sendEvent("returned"); -            } else { -                client.sendEvent("returnFailed"); -            } +            Thread t = new Thread(() -> { +                Map d = data.getData(); + +                int userId = (int) d.get("id"); +                Book b = new Book((int) d.get("bookId")); + +                try { +                    if (b.returnBook(userId)) { +                        client.sendEvent("returned"); +                    } else { +                        client.sendEvent("returnFailed"); +                    } +                } catch (SQLException e) { +                    throw new RuntimeException(e); +                } +            }); + +            t.start(); +            t.join();          });      } diff --git a/src/Store/User.java b/src/Store/User.java index e414520..c253421 100644 --- a/src/Store/User.java +++ b/src/Store/User.java @@ -74,39 +74,53 @@ public class User {      public static DataListener<JSONMessage> signUpHandler() {          return ((client, data, ackSender) -> { -            Map<String,String> d = data.getData(); - -            User user = new User(d.get("userName"), d.get("password")); -            try { -                if (user.save()) { -                    client.sendEvent("signedUp"); -                } else { -                    client.sendEvent("usernameTaken"); +            Thread t = new Thread(() -> { +                Map<String,String> d = data.getData(); + +                User user = new User(d.get("userName"), d.get("password")); +                try { +                    if (user.save()) { +                        client.sendEvent("signedUp"); +                    } else { +                        client.sendEvent("usernameTaken"); +                        client.sendEvent("signUpFailed"); +                    } +                } catch (SQLException e) {                      client.sendEvent("signUpFailed"); +                    System.out.println(e.getMessage());                  } -            } catch (SQLException e) { -                client.sendEvent("signUpFailed"); -                System.out.println(e.getMessage()); -            } +            }); + +            t.start(); +            t.join();          });      }      public static DataListener<JSONMessage> loginHandler() {          return ((client, data, ackSender) -> { -            Map<String,String> d = data.getData(); - -            User user = new User(d.get("userName"), d.get("password")); -            try { -                user.login(); -            } catch (SQLException e) { -                System.out.println(e.getMessage()); -            } - -            if (user.login()) { -                client.sendEvent("loggedIn", user.id); -            } else { -                client.sendEvent("loginFailed"); -            } +            Thread t = new Thread(() -> { +                Map<String,String> d = data.getData(); + +                User user = new User(d.get("userName"), d.get("password")); +                try { +                    user.login(); +                } catch (SQLException e) { +                    System.out.println(e.getMessage()); +                } + +                try { +                    if (user.login()) { +                        client.sendEvent("loggedIn", user.id); +                    } else { +                        client.sendEvent("loginFailed"); +                    } +                } catch (SQLException e) { +                    throw new RuntimeException(e); +                } +            }); + +            t.start(); +            t.join();          });      } |