From 27fb121d78e46b35f57241c83d6cd4a4b0714785 Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Fri, 3 Jul 2020 00:49:10 +0000 Subject: [PATCH 1/7] Introduced commenting feature via Java HashMaps, JS dictionaries --- .../com/google/sps/servlets/DataServlet.java | 19 +++++++++++++------ portfolio/src/main/webapp/index.html | 7 +++++++ portfolio/src/main/webapp/script.js | 5 +++-- 3 files changed, 23 insertions(+), 8 deletions(-) diff --git a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java index 7747e60..a2dd588 100644 --- a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java +++ b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java @@ -20,22 +20,29 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.util.ArrayList; +import java.util.HashMap; +// import java.util.ArrayList; import com.google.gson.Gson; /** Servlet that returns some example content. TODO: modify this file to handle comments data */ @WebServlet("/data") public class DataServlet extends HttpServlet { - ArrayList messages = new ArrayList<>(); + HashMap messages = new HashMap(); + // ArrayList messages = new ArrayList(); @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { - messages.add("This is brought to you by JSON"); - messages.add("JSON is JavaScript Object Notation"); - messages.add("It is great for storing data like this"); - response.setContentType("application/json;"); String json = new Gson().toJson(messages); response.getWriter().println(json); } + + @Override + public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { + String username = request.getParameter("username"); + String message = request.getParameter("comment-or-question"); + messages.put(username, message); + // messages.add(username); + response.sendRedirect("/index.html"); + } } diff --git a/portfolio/src/main/webapp/index.html b/portfolio/src/main/webapp/index.html index d22d2dc..9a5bc31 100644 --- a/portfolio/src/main/webapp/index.html +++ b/portfolio/src/main/webapp/index.html @@ -19,6 +19,13 @@

Ihsan Olawale's Portfolio

After seeing what I look like, you might be interested to know more about me. Don't worry, I considered this during the design phase, and presented an opportunity to cycle through assorted facts.

+
+

Comment here on your perception of the content. Or ask me any questions about me.


+ + +

+ +
diff --git a/portfolio/src/main/webapp/script.js b/portfolio/src/main/webapp/script.js index 160b549..3e5e936 100644 --- a/portfolio/src/main/webapp/script.js +++ b/portfolio/src/main/webapp/script.js @@ -53,8 +53,9 @@ function displayMessages() { console.log(messages); const messageContainer = document.getElementById('messages-container'); messageContainer.innerText = ''; - for (const message of messages) { - messageContainer.innerText += message + '\n'; + for (const username in messages) { + messageContainer.innerText += username + ': ' + messages[username] + '\n\n'; + // messageContainer.innerText += username + '\n'; } }); } From a67da8fb12017e147bd65731b928be8040b21b6a Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Fri, 10 Jul 2020 18:40:34 -0700 Subject: [PATCH 2/7] Removed commented out code and set type of messages to Map --- .../main/java/com/google/sps/servlets/DataServlet.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java index a2dd588..980e514 100644 --- a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java +++ b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java @@ -21,14 +21,13 @@ import javax.servlet.http.HttpServletResponse; import java.util.HashMap; -// import java.util.ArrayList; +import java.util.Map; import com.google.gson.Gson; -/** Servlet that returns some example content. TODO: modify this file to handle comments data */ +/** Servlet that returns some example content. */ @WebServlet("/data") public class DataServlet extends HttpServlet { - HashMap messages = new HashMap(); - // ArrayList messages = new ArrayList(); + private Map messages = new HashMap(); @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { @@ -42,7 +41,6 @@ public void doPost(HttpServletRequest request, HttpServletResponse response) thr String username = request.getParameter("username"); String message = request.getParameter("comment-or-question"); messages.put(username, message); - // messages.add(username); response.sendRedirect("/index.html"); } } From 9322dabb72ac47fa9ac0028657d49727a9b5d150 Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Fri, 10 Jul 2020 18:41:26 -0700 Subject: [PATCH 3/7] Used fix_java.sh to reformat java file --- .../src/main/java/com/google/sps/servlets/DataServlet.java | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java index 980e514..e901466 100644 --- a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java +++ b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java @@ -14,16 +14,15 @@ package com.google.sps.servlets; +import com.google.gson.Gson; import java.io.IOException; +import java.util.HashMap; +import java.util.Map; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import java.util.HashMap; -import java.util.Map; -import com.google.gson.Gson; - /** Servlet that returns some example content. */ @WebServlet("/data") public class DataServlet extends HttpServlet { From 478257f0cf7264255f4970f43860dbb20ea2d3cd Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Mon, 13 Jul 2020 11:04:31 -0700 Subject: [PATCH 4/7] Removed redundant '/'s in
tags --- portfolio/src/main/webapp/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/portfolio/src/main/webapp/index.html b/portfolio/src/main/webapp/index.html index 9a5bc31..af2864e 100644 --- a/portfolio/src/main/webapp/index.html +++ b/portfolio/src/main/webapp/index.html @@ -20,10 +20,10 @@

Ihsan Olawale's Portfolio

-

Comment here on your perception of the content. Or ask me any questions about me.


+

Comment here on your perception of the content. Or ask me any questions about me.


-

+

From a1353f139906cb7d450b5de158253149af2ff020 Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Mon, 13 Jul 2020 12:18:36 -0700 Subject: [PATCH 5/7] Marked messages as final and used ConcurrentHashMap --- .../src/main/java/com/google/sps/servlets/DataServlet.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java index e901466..b95dead 100644 --- a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java +++ b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java @@ -16,7 +16,7 @@ import com.google.gson.Gson; import java.io.IOException; -import java.util.HashMap; +import java.util.ConcurrentHashMap; import java.util.Map; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; @@ -26,7 +26,7 @@ /** Servlet that returns some example content. */ @WebServlet("/data") public class DataServlet extends HttpServlet { - private Map messages = new HashMap(); + private final Map messages = new ConcurrentHashMap(); @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { From b72c0ee11de38376c89010405ffdec6570b8e2b8 Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Mon, 13 Jul 2020 13:03:20 -0700 Subject: [PATCH 6/7] Renamed messages to messagesByUsername and removed extraneous generic types --- .../src/main/java/com/google/sps/servlets/DataServlet.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java index b95dead..e9e04bc 100644 --- a/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java +++ b/portfolio/src/main/java/com/google/sps/servlets/DataServlet.java @@ -26,12 +26,12 @@ /** Servlet that returns some example content. */ @WebServlet("/data") public class DataServlet extends HttpServlet { - private final Map messages = new ConcurrentHashMap(); + private final Map messagesByUsername = new ConcurrentHashMap<>(); @Override public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException { response.setContentType("application/json;"); - String json = new Gson().toJson(messages); + String json = new Gson().toJson(messagesByUsername); response.getWriter().println(json); } @@ -39,7 +39,7 @@ public void doGet(HttpServletRequest request, HttpServletResponse response) thro public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException { String username = request.getParameter("username"); String message = request.getParameter("comment-or-question"); - messages.put(username, message); + messagesByUsername.put(username, message); response.sendRedirect("/index.html"); } } From 2afe12dff88c705b2ad1ae01d9ad3aa60fa7eb47 Mon Sep 17 00:00:00 2001 From: Ihsan Olawale Date: Mon, 13 Jul 2020 14:31:45 -0700 Subject: [PATCH 7/7] Removed commented out code in script.js --- portfolio/src/main/webapp/script.js | 1 - 1 file changed, 1 deletion(-) diff --git a/portfolio/src/main/webapp/script.js b/portfolio/src/main/webapp/script.js index 3e5e936..3c397f8 100644 --- a/portfolio/src/main/webapp/script.js +++ b/portfolio/src/main/webapp/script.js @@ -55,7 +55,6 @@ function displayMessages() { messageContainer.innerText = ''; for (const username in messages) { messageContainer.innerText += username + ': ' + messages[username] + '\n\n'; - // messageContainer.innerText += username + '\n'; } }); }