Revize 455af7b1
Přidáno uživatelem Tomáš Šimandl před asi 6 roky(ů)
sources/pom.xml | ||
---|---|---|
151 | 151 |
<version>2.4</version> |
152 | 152 |
<classifier>jdk15</classifier> |
153 | 153 |
</dependency> |
154 |
<!-- https://mvnrepository.com/artifact/org.json/json --> |
|
155 |
<dependency> |
|
156 |
<groupId>org.json</groupId> |
|
157 |
<artifactId>json</artifactId> |
|
158 |
<version>20180813</version> |
|
159 |
</dependency> |
|
160 |
|
|
161 |
|
|
154 |
|
|
162 | 155 |
|
163 | 156 |
<!-- Database --> |
164 | 157 |
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> |
sources/src/main/java/cz/zcu/kiv/offscreen/servlets/api/GetDBDiagram.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.offscreen.servlets.api; |
2 | 2 |
|
3 | 3 |
import com.google.common.base.Strings; |
4 |
import com.google.gson.Gson; |
|
4 | 5 |
import cz.zcu.kiv.offscreen.servlets.BaseServlet; |
5 | 6 |
import cz.zcu.kiv.offscreen.user.DB; |
6 | 7 |
import cz.zcu.kiv.offscreen.user.Diagram; |
7 | 8 |
import org.apache.logging.log4j.LogManager; |
8 | 9 |
import org.apache.logging.log4j.Logger; |
9 |
import org.json.JSONObject; |
|
10 | 10 |
|
11 | 11 |
import javax.servlet.http.HttpServletRequest; |
12 | 12 |
import javax.servlet.http.HttpServletResponse; |
... | ... | |
39 | 39 |
return; |
40 | 40 |
} |
41 | 41 |
|
42 |
JSONObject json = new JSONObject(diagram.getDiagram());
|
|
42 |
String json = new Gson().toJson(diagram.getDiagram());
|
|
43 | 43 |
|
44 | 44 |
response.setContentType("application/json"); |
45 | 45 |
response.setCharacterEncoding("UTF-8"); |
46 | 46 |
response.setStatus(HttpServletResponse.SC_OK); |
47 |
response.getWriter().write(json.toString());
|
|
47 |
response.getWriter().write(json); |
|
48 | 48 |
response.getWriter().flush(); |
49 | 49 |
logger.debug("Response OK"); |
50 | 50 |
} |
sources/src/main/java/cz/zcu/kiv/offscreen/servlets/api/GetPrivateDiagrams.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.offscreen.servlets.api; |
2 | 2 |
|
3 |
import com.google.gson.JsonArray; |
|
4 |
import com.google.gson.JsonObject; |
|
3 | 5 |
import cz.zcu.kiv.offscreen.servlets.BaseServlet; |
4 | 6 |
import cz.zcu.kiv.offscreen.user.DB; |
5 | 7 |
import cz.zcu.kiv.offscreen.user.Diagram; |
6 | 8 |
import org.apache.logging.log4j.LogManager; |
7 | 9 |
import org.apache.logging.log4j.Logger; |
8 |
import org.json.JSONArray; |
|
9 |
import org.json.JSONObject; |
|
10 | 10 |
|
11 | 11 |
import javax.servlet.http.HttpServletRequest; |
12 | 12 |
import javax.servlet.http.HttpServletResponse; |
... | ... | |
34 | 34 |
int loggedUserId = getUserId(request); |
35 | 35 |
List<Map<String, String>> userDiagramList = diagram.getDiagramListByUserId(loggedUserId); |
36 | 36 |
|
37 |
JSONArray json = new JSONArray();
|
|
37 |
JsonArray jsonArray = new JsonArray();
|
|
38 | 38 |
for (Map<String, String> userDiagram : userDiagramList) { |
39 |
json.put(new JSONObject(userDiagram)); |
|
39 |
|
|
40 |
JsonObject jsonObject = new JsonObject(); |
|
41 |
jsonObject.addProperty("id", userDiagram.get("id")); |
|
42 |
jsonObject.addProperty("name", userDiagram.get("name")); |
|
43 |
|
|
44 |
jsonArray.add(jsonObject); |
|
40 | 45 |
} |
41 | 46 |
|
42 | 47 |
response.setContentType("application/json"); |
43 | 48 |
response.setCharacterEncoding("UTF-8"); |
44 | 49 |
response.setStatus(HttpServletResponse.SC_OK); |
45 |
response.getWriter().write(json.toString()); |
|
50 |
response.getWriter().write(jsonArray.toString());
|
|
46 | 51 |
response.getWriter().flush(); |
47 | 52 |
logger.debug("Response OK"); |
48 | 53 |
|
sources/src/main/java/cz/zcu/kiv/offscreen/servlets/api/Login.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.offscreen.servlets.api; |
2 | 2 |
|
3 | 3 |
import com.google.common.base.Strings; |
4 |
import com.google.gson.JsonObject; |
|
4 | 5 |
import cz.zcu.kiv.offscreen.servlets.BaseServlet; |
5 | 6 |
import cz.zcu.kiv.offscreen.user.DB; |
6 | 7 |
import cz.zcu.kiv.offscreen.user.User; |
7 | 8 |
import cz.zcu.kiv.offscreen.vo.UserVO; |
8 | 9 |
import org.apache.logging.log4j.LogManager; |
9 | 10 |
import org.apache.logging.log4j.Logger; |
10 |
import org.json.JSONObject; |
|
11 |
|
|
11 | 12 |
|
12 | 13 |
import javax.servlet.http.HttpServletRequest; |
13 | 14 |
import javax.servlet.http.HttpServletResponse; |
14 | 15 |
import java.io.IOException; |
15 |
import java.util.HashMap; |
|
16 |
import java.util.Map; |
|
17 |
|
|
18 | 16 |
public class Login extends BaseServlet { |
19 | 17 |
private static final Logger logger = LogManager.getLogger(); |
20 | 18 |
|
... | ... | |
24 | 22 |
String username = request.getParameter("username"); |
25 | 23 |
String password = request.getParameter("password"); |
26 | 24 |
|
27 |
Map<String, String> errors = new HashMap<>();
|
|
25 |
JsonObject errors = new JsonObject();
|
|
28 | 26 |
|
29 | 27 |
if (Strings.isNullOrEmpty(username)) { |
30 |
errors.put("username", "Please enter username.");
|
|
28 |
errors.addProperty("username", "Please enter username.");
|
|
31 | 29 |
logger.debug("Empty user name"); |
32 | 30 |
} |
33 | 31 |
|
34 | 32 |
if (Strings.isNullOrEmpty(password)) { |
35 |
errors.put("password", "Please enter password.");
|
|
33 |
errors.addProperty("password", "Please enter password.");
|
|
36 | 34 |
logger.debug("Empty password"); |
37 | 35 |
} |
38 | 36 |
|
39 |
if (errors.isEmpty()) {
|
|
37 |
if (errors.size() == 0) {
|
|
40 | 38 |
DB db = new DB(getServletContext()); |
41 | 39 |
User user = new User(db); |
42 | 40 |
|
... | ... | |
49 | 47 |
request.getSession().setAttribute("userId", userVO.getId()); |
50 | 48 |
request.getSession().setAttribute("user", userVO); |
51 | 49 |
|
52 |
Map<String, Object> userMap = new HashMap<>();
|
|
53 |
userMap.put("id", user.getId());
|
|
54 |
userMap.put("username", user.getNick());
|
|
50 |
JsonObject json = new JsonObject();
|
|
51 |
json.addProperty("id", user.getId());
|
|
52 |
json.addProperty("username", user.getNick());
|
|
55 | 53 |
|
56 |
JSONObject json = new JSONObject(userMap); |
|
57 | 54 |
|
58 | 55 |
response.setContentType("application/json"); |
59 | 56 |
response.setCharacterEncoding("UTF-8"); |
... | ... | |
72 | 69 |
} |
73 | 70 |
|
74 | 71 |
} else { |
75 |
JSONObject json = new JSONObject();
|
|
76 |
json.put("error", new JSONObject(errors));
|
|
72 |
JsonObject json = new JsonObject();
|
|
73 |
json.add("error", errors);
|
|
77 | 74 |
|
78 | 75 |
response.setStatus(HttpServletResponse.SC_BAD_REQUEST); |
79 | 76 |
response.setContentType("application/json"); |
sources/src/main/java/cz/zcu/kiv/offscreen/servlets/api/Register.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.offscreen.servlets.api; |
2 | 2 |
|
3 | 3 |
import com.google.common.base.Strings; |
4 |
import com.google.gson.JsonObject; |
|
4 | 5 |
import cz.zcu.kiv.offscreen.servlets.BaseServlet; |
5 | 6 |
import cz.zcu.kiv.offscreen.user.DB; |
6 | 7 |
import cz.zcu.kiv.offscreen.user.User; |
7 | 8 |
import org.apache.logging.log4j.LogManager; |
8 | 9 |
import org.apache.logging.log4j.Logger; |
9 |
import org.json.JSONObject; |
|
10 |
|
|
10 | 11 |
|
11 | 12 |
import javax.servlet.http.HttpServletRequest; |
12 | 13 |
import javax.servlet.http.HttpServletResponse; |
... | ... | |
34 | 35 |
DB db = new DB(getServletContext()); |
35 | 36 |
User user = new User(db); |
36 | 37 |
|
37 |
Map<String, String> errors = new HashMap<>();
|
|
38 |
JsonObject errors = new JsonObject();
|
|
38 | 39 |
|
39 | 40 |
if (Strings.isNullOrEmpty(name)) { |
40 |
errors.put("name", "Please enter name.");
|
|
41 |
errors.addProperty("name", "Please enter name.");
|
|
41 | 42 |
logger.debug("Empty name"); |
42 | 43 |
} |
43 | 44 |
|
44 | 45 |
if (Strings.isNullOrEmpty(email)) { |
45 |
errors.put("email", "Please enter e-mail address.");
|
|
46 |
errors.addProperty("email", "Please enter e-mail address.");
|
|
46 | 47 |
logger.debug("Empty e-mail address"); |
47 | 48 |
|
48 | 49 |
} else if (!isEmailAddressValid(email)) { |
49 |
errors.put("email", "Please enter valid e-mail address.");
|
|
50 |
errors.addProperty("email", "Please enter valid e-mail address.");
|
|
50 | 51 |
logger.debug("Invalid e-mail address"); |
51 | 52 |
|
52 | 53 |
} else if (user.isEmailExists(email)) { |
53 |
errors.put("email", "E-mail already exists.");
|
|
54 |
errors.addProperty("email", "E-mail already exists.");
|
|
54 | 55 |
logger.debug("E-mail exists"); |
55 | 56 |
} |
56 | 57 |
|
57 | 58 |
if (Strings.isNullOrEmpty(username)) { |
58 |
errors.put("username", "Please enter username.");
|
|
59 |
errors.addProperty("username", "Please enter username.");
|
|
59 | 60 |
logger.debug("Empty user name"); |
60 | 61 |
|
61 | 62 |
} else if (user.isNickExists(username)) { |
62 |
errors.put("username", "Nickname already exists.");
|
|
63 |
errors.addProperty("username", "Nickname already exists.");
|
|
63 | 64 |
logger.debug("Username(nickname) exists"); |
64 | 65 |
} |
65 | 66 |
|
66 | 67 |
if (Strings.isNullOrEmpty(password) || Strings.isNullOrEmpty(passwordCheck)) { |
67 |
errors.put("password", "Please enter password.");
|
|
68 |
errors.addProperty("password", "Please enter password.");
|
|
68 | 69 |
logger.debug("Empty password"); |
69 | 70 |
|
70 | 71 |
} else if (password.length() < 5) { |
71 |
errors.put("password", "Passwords must be at least 5 characters long.");
|
|
72 |
errors.addProperty("password", "Passwords must be at least 5 characters long.");
|
|
72 | 73 |
logger.debug("Invalid password"); |
73 | 74 |
|
74 | 75 |
} else if (!password.equals(passwordCheck)) { |
75 |
errors.put("passwordCheck", "Passwords must be equal.");
|
|
76 |
errors.addProperty("passwordCheck", "Passwords must be equal.");
|
|
76 | 77 |
logger.debug("Passwords not match"); |
77 | 78 |
} |
78 | 79 |
|
79 |
if (errors.isEmpty()) {
|
|
80 |
if (errors.size() == 0) {
|
|
80 | 81 |
Map<String, String> userMap = new HashMap<>(); |
81 | 82 |
userMap.put("name", name); |
82 | 83 |
userMap.put("email", email); |
... | ... | |
90 | 91 |
logger.debug("User created"); |
91 | 92 |
|
92 | 93 |
} else { |
93 |
JSONObject json = new JSONObject();
|
|
94 |
json.put("error", new JSONObject(errors));
|
|
94 |
JsonObject json = new JsonObject();
|
|
95 |
json.add("error", errors);
|
|
95 | 96 |
|
96 | 97 |
response.setStatus(HttpServletResponse.SC_BAD_REQUEST); |
97 | 98 |
response.setContentType("application/json"); |
sources/src/main/java/cz/zcu/kiv/offscreen/servlets/api/SaveDiagram.java | ||
---|---|---|
1 | 1 |
package cz.zcu.kiv.offscreen.servlets.api; |
2 | 2 |
|
3 | 3 |
import com.google.common.base.Strings; |
4 |
import com.google.gson.Gson; |
|
5 |
import com.google.gson.JsonObject; |
|
4 | 6 |
import cz.zcu.kiv.offscreen.servlets.BaseServlet; |
5 | 7 |
import cz.zcu.kiv.offscreen.user.DB; |
6 | 8 |
import cz.zcu.kiv.offscreen.user.Diagram; |
7 | 9 |
import org.apache.logging.log4j.LogManager; |
8 | 10 |
import org.apache.logging.log4j.Logger; |
9 |
import org.json.JSONObject; |
|
10 | 11 |
|
11 | 12 |
import javax.servlet.http.HttpServletRequest; |
12 | 13 |
import javax.servlet.http.HttpServletResponse; |
... | ... | |
71 | 72 |
logger.debug("Diagram created or updated."); |
72 | 73 |
|
73 | 74 |
// send response |
74 |
JSONObject json = new JSONObject(diagram.getDiagram()); |
|
75 |
|
|
76 |
String json = new Gson().toJson(diagram.getDiagram()); |
|
75 | 77 |
|
76 | 78 |
response.setContentType("application/json"); |
77 | 79 |
response.setCharacterEncoding("UTF-8"); |
78 | 80 |
response.setStatus(HttpServletResponse.SC_OK); |
79 |
response.getWriter().write(json.toString());
|
|
81 |
response.getWriter().write(json); |
|
80 | 82 |
response.getWriter().flush(); |
81 | 83 |
logger.debug("Response OK"); |
82 | 84 |
} |
Také k dispozici: Unified diff
Removed org.json dependency
+ changed to gson