Skip to content
Snippets Groups Projects
Commit b6267682 authored by Léo Banno-Cloutier's avatar Léo Banno-Cloutier
Browse files

org.json: remove org.json from dependencies

Change-Id: If67b4ef11aed93a7ec0b09880badb14e53176859
parent 59942b97
No related branches found
No related tags found
No related merge requests found
...@@ -84,11 +84,6 @@ ...@@ -84,11 +84,6 @@
<artifactId>httpclient</artifactId> <artifactId>httpclient</artifactId>
<version>4.5.14</version> <version>4.5.14</version>
</dependency> </dependency>
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20230618</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
...@@ -27,6 +27,7 @@ import static net.jami.jams.server.Server.dataStore; ...@@ -27,6 +27,7 @@ import static net.jami.jams.server.Server.dataStore;
import static net.jami.jams.server.Server.userAuthenticationModule; import static net.jami.jams.server.Server.userAuthenticationModule;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonObject;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
...@@ -45,11 +46,8 @@ import net.jami.jams.common.objects.user.User; ...@@ -45,11 +46,8 @@ import net.jami.jams.common.objects.user.User;
import net.jami.jams.common.objects.user.UserProfile; import net.jami.jams.common.objects.user.UserProfile;
import net.jami.jams.common.serialization.adapters.GsonFactory; import net.jami.jams.common.serialization.adapters.GsonFactory;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.Scanner;
@Slf4j @Slf4j
@WebServlet("/api/admin/directory/entry") @WebServlet("/api/admin/directory/entry")
...@@ -62,22 +60,7 @@ public class DirectoryEntryServlet extends HttpServlet { ...@@ -62,22 +60,7 @@ public class DirectoryEntryServlet extends HttpServlet {
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException { protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws IOException {
// Create a user profile. // Create a user profile.
String realm = "LOCAL"; String realm = "LOCAL";
Scanner s = new Scanner(req.getInputStream()).useDelimiter("\\A"); UserProfile userProfile = gson.fromJson(req.getReader(), UserProfile.class);
String result = s.hasNext() ? s.next() : "";
final JSONObject obj = new JSONObject(result);
UserProfile userProfile = new UserProfile();
userProfile.setUsername(obj.get("username").toString());
userProfile.setFirstName(obj.get("firstName").toString());
userProfile.setLastName(obj.get("lastName").toString());
userProfile.setEmail(obj.get("email").toString());
userProfile.setProfilePicture(obj.get("profilePicture").toString());
userProfile.setOrganization(obj.get("organization").toString());
userProfile.setPhoneNumber(obj.get("phoneNumber").toString());
userProfile.setPhoneNumberExtension(obj.get("phoneNumberExtension").toString());
userProfile.setFaxNumber(obj.get("faxNumber").toString());
userProfile.setMobileNumber(obj.get("mobileNumber").toString());
userProfile.setId(obj.get("jamiId").toString());
userAuthenticationModule userAuthenticationModule
.getAuthSources() .getAuthSources()
......
...@@ -3,6 +3,7 @@ package net.jami.jams.server.servlets.api.admin.group; ...@@ -3,6 +3,7 @@ package net.jami.jams.server.servlets.api.admin.group;
import static net.jami.jams.server.Server.dataStore; import static net.jami.jams.server.Server.dataStore;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonObject;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
...@@ -18,11 +19,8 @@ import net.jami.jams.common.objects.user.AccessLevel; ...@@ -18,11 +19,8 @@ import net.jami.jams.common.objects.user.AccessLevel;
import net.jami.jams.common.objects.user.Group; import net.jami.jams.common.objects.user.Group;
import net.jami.jams.common.serialization.adapters.GsonFactory; import net.jami.jams.common.serialization.adapters.GsonFactory;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors;
@WebServlet("/api/admin/group/*") @WebServlet("/api/admin/group/*")
@Slf4j @Slf4j
...@@ -53,14 +51,10 @@ public class GroupServlet extends HttpServlet { ...@@ -53,14 +51,10 @@ public class GroupServlet extends HttpServlet {
protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws IOException { protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws IOException {
String id = req.getPathInfo().replace("/", ""); String id = req.getPathInfo().replace("/", "");
final JSONObject obj = JsonObject obj = gson.fromJson(req.getReader(), JsonObject.class);
new JSONObject(
req.getReader()
.lines()
.collect(Collectors.joining(System.lineSeparator())));
String name = obj.getString("name"); String name = obj.get("name").getAsString();
String blueprint = obj.getString("blueprint"); String blueprint = obj.get("blueprint").getAsString();
if (dataStore.getGroupDao().updateObject(id, name, blueprint)) resp.setStatus(200); if (dataStore.getGroupDao().updateObject(id, name, blueprint)) resp.setStatus(200);
else resp.sendError(500, "Could not update group!"); else resp.sendError(500, "Could not update group!");
......
...@@ -2,6 +2,9 @@ package net.jami.jams.server.servlets.api.admin.group; ...@@ -2,6 +2,9 @@ package net.jami.jams.server.servlets.api.admin.group;
import static net.jami.jams.server.Server.dataStore; import static net.jami.jams.server.Server.dataStore;
import com.google.gson.JsonParser;
import com.google.gson.JsonSyntaxException;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
...@@ -15,8 +18,6 @@ import net.jami.jams.common.annotations.ScopedServletMethod; ...@@ -15,8 +18,6 @@ import net.jami.jams.common.annotations.ScopedServletMethod;
import net.jami.jams.common.objects.user.AccessLevel; import net.jami.jams.common.objects.user.AccessLevel;
import net.jami.jams.common.objects.user.Policy; import net.jami.jams.common.objects.user.Policy;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.Scanner; import java.util.Scanner;
...@@ -39,9 +40,14 @@ public class PolicyServlet extends HttpServlet { ...@@ -39,9 +40,14 @@ public class PolicyServlet extends HttpServlet {
String name = req.getParameter("name"); String name = req.getParameter("name");
Scanner s = new Scanner(req.getInputStream()).useDelimiter("\\A"); Scanner s = new Scanner(req.getInputStream()).useDelimiter("\\A");
String result = s.hasNext() ? s.next() : ""; String policyData = s.hasNext() ? s.next() : "";
final JSONObject obj = new JSONObject(result);
final String policyData = obj.toString(); try {
JsonParser.parseString(policyData);
} catch (JsonSyntaxException e) {
resp.sendError(400, "Invalid JSON!");
return;
}
if (dataStore.getPolicyDao().updateObject(name, policyData)) resp.setStatus(200); if (dataStore.getPolicyDao().updateObject(name, policyData)) resp.setStatus(200);
else resp.sendError(500, "could not update the group's name!"); else resp.sendError(500, "could not update the group's name!");
...@@ -53,14 +59,18 @@ public class PolicyServlet extends HttpServlet { ...@@ -53,14 +59,18 @@ public class PolicyServlet extends HttpServlet {
String name = req.getParameter("name"); String name = req.getParameter("name");
Scanner s = new Scanner(req.getInputStream()).useDelimiter("\\A"); Scanner s = new Scanner(req.getInputStream()).useDelimiter("\\A");
String result = s.hasNext() ? s.next() : ""; String policyData = s.hasNext() ? s.next() : "";
final JSONObject obj = new JSONObject(result); try {
final String jsonString = obj.toString(); JsonParser.parseString(policyData);
} catch (JsonSyntaxException e) {
resp.sendError(400, "Invalid JSON!");
return;
}
Policy policy = new Policy(); Policy policy = new Policy();
policy.setName(name); policy.setName(name);
policy.setPolicyData(jsonString); policy.setPolicyData(policyData);
if (dataStore.getPolicyDao().storeObject(policy)) resp.setStatus(200); if (dataStore.getPolicyDao().storeObject(policy)) resp.setStatus(200);
else resp.sendError(500, "Could not create a group successfully!"); else resp.sendError(500, "Could not create a group successfully!");
} }
......
...@@ -3,6 +3,7 @@ package net.jami.jams.server.servlets.api.admin.group; ...@@ -3,6 +3,7 @@ package net.jami.jams.server.servlets.api.admin.group;
import static net.jami.jams.server.Server.dataStore; import static net.jami.jams.server.Server.dataStore;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonObject;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
...@@ -17,12 +18,9 @@ import net.jami.jams.common.objects.user.AccessLevel; ...@@ -17,12 +18,9 @@ import net.jami.jams.common.objects.user.AccessLevel;
import net.jami.jams.common.objects.user.UserGroupMapping; import net.jami.jams.common.objects.user.UserGroupMapping;
import net.jami.jams.common.serialization.adapters.GsonFactory; import net.jami.jams.common.serialization.adapters.GsonFactory;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.stream.Collectors;
@WebServlet("/api/admin/group/members/*") @WebServlet("/api/admin/group/members/*")
@Slf4j @Slf4j
...@@ -65,13 +63,8 @@ public class UserGroupServlet extends HttpServlet { ...@@ -65,13 +63,8 @@ public class UserGroupServlet extends HttpServlet {
String groupId = req.getPathInfo().replace("/", ""); String groupId = req.getPathInfo().replace("/", "");
final JSONObject obj = JsonObject obj = gson.fromJson(req.getReader(), JsonObject.class);
new JSONObject( String username = obj.get("username").getAsString();
req.getReader()
.lines()
.collect(Collectors.joining(System.lineSeparator())));
String username = obj.getString("username");
Optional<UserGroupMapping> existingMapping = Optional<UserGroupMapping> existingMapping =
dataStore.getUserGroupMappingsDao().getByGroupIdAndUsername(groupId, username); dataStore.getUserGroupMappingsDao().getByGroupIdAndUsername(groupId, username);
...@@ -97,13 +90,8 @@ public class UserGroupServlet extends HttpServlet { ...@@ -97,13 +90,8 @@ public class UserGroupServlet extends HttpServlet {
String groupId = req.getPathInfo().replace("/", ""); String groupId = req.getPathInfo().replace("/", "");
final JSONObject obj = JsonObject obj = gson.fromJson(req.getReader(), JsonObject.class);
new JSONObject( String username = obj.get("username").getAsString();
req.getReader()
.lines()
.collect(Collectors.joining(System.lineSeparator())));
String username = obj.getString("username");
if (dataStore.getUserGroupMappingsDao().deleteObject(username, groupId)) { if (dataStore.getUserGroupMappingsDao().deleteObject(username, groupId)) {
resp.setStatus(200); resp.setStatus(200);
......
...@@ -28,6 +28,7 @@ import static net.jami.jams.server.Server.nameServer; ...@@ -28,6 +28,7 @@ import static net.jami.jams.server.Server.nameServer;
import static net.jami.jams.server.Server.userAuthenticationModule; import static net.jami.jams.server.Server.userAuthenticationModule;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonObject;
import jakarta.servlet.ServletException; import jakarta.servlet.ServletException;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
...@@ -50,13 +51,11 @@ import net.jami.jams.server.core.workflows.RevokeUserFlow; ...@@ -50,13 +51,11 @@ import net.jami.jams.server.core.workflows.RevokeUserFlow;
import org.apache.commons.codec.binary.Base64; import org.apache.commons.codec.binary.Base64;
import org.bouncycastle.cert.X509CRLEntryHolder; import org.bouncycastle.cert.X509CRLEntryHolder;
import org.bouncycastle.cert.X509CRLHolder; import org.bouncycastle.cert.X509CRLHolder;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
@WebServlet("/api/admin/user") @WebServlet("/api/admin/user")
public class UserServlet extends HttpServlet { public class UserServlet extends HttpServlet {
...@@ -107,13 +106,9 @@ public class UserServlet extends HttpServlet { ...@@ -107,13 +106,9 @@ public class UserServlet extends HttpServlet {
@JsonContent @JsonContent
protected void doPost(HttpServletRequest req, HttpServletResponse resp) protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException { throws ServletException, IOException {
final JSONObject obj = JsonObject obj = gson.fromJson(req.getReader(), JsonObject.class);
new JSONObject( String username = obj.get("username").getAsString();
req.getReader() String password = obj.get("password").getAsString();
.lines()
.collect(Collectors.joining(System.lineSeparator())));
String password = obj.getString("password");
if (password.isEmpty()) { if (password.isEmpty()) {
resp.sendError(400, "Password is empty!"); resp.sendError(400, "Password is empty!");
...@@ -123,8 +118,6 @@ public class UserServlet extends HttpServlet { ...@@ -123,8 +118,6 @@ public class UserServlet extends HttpServlet {
byte[] salt = PasswordUtil.generateSalt(); byte[] salt = PasswordUtil.generateSalt();
String hashedPassword = PasswordUtil.hashPassword(password, salt); String hashedPassword = PasswordUtil.hashPassword(password, salt);
String username = obj.getString("username");
User user = new User(); User user = new User();
user.setUsername(username); user.setUsername(username);
user.setNeedsPasswordReset(true); user.setNeedsPasswordReset(true);
...@@ -146,13 +139,9 @@ public class UserServlet extends HttpServlet { ...@@ -146,13 +139,9 @@ public class UserServlet extends HttpServlet {
@Override @Override
@ScopedServletMethod(securityGroups = {AccessLevel.ADMIN}) @ScopedServletMethod(securityGroups = {AccessLevel.ADMIN})
protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws IOException { protected void doPut(HttpServletRequest req, HttpServletResponse resp) throws IOException {
final JSONObject obj = JsonObject obj = gson.fromJson(req.getReader(), JsonObject.class);
new JSONObject( String username = obj.get("username").getAsString();
req.getReader() String pw = obj.get("password").getAsString();
.lines()
.collect(Collectors.joining(System.lineSeparator())));
String pw = obj.getString("password");
String username = obj.getString("username");
Optional<User> result = dataStore.getUserDao().getByUsername(username); Optional<User> result = dataStore.getUserDao().getByUsername(username);
......
...@@ -27,6 +27,8 @@ import static net.jami.jams.server.Server.nameServer; ...@@ -27,6 +27,8 @@ import static net.jami.jams.server.Server.nameServer;
import static net.jami.jams.server.Server.userAuthenticationModule; import static net.jami.jams.server.Server.userAuthenticationModule;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServlet;
...@@ -47,8 +49,6 @@ import net.jami.jams.common.objects.user.User; ...@@ -47,8 +49,6 @@ import net.jami.jams.common.objects.user.User;
import net.jami.jams.common.objects.user.UserProfile; import net.jami.jams.common.objects.user.UserProfile;
import net.jami.jams.common.serialization.adapters.GsonFactory; import net.jami.jams.common.serialization.adapters.GsonFactory;
import org.json.JSONObject;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Comparator; import java.util.Comparator;
...@@ -156,10 +156,13 @@ public class SearchDirectoryServlet extends HttpServlet { ...@@ -156,10 +156,13 @@ public class SearchDirectoryServlet extends HttpServlet {
}); });
}); });
JSONObject obj = new JSONObject(); JsonObject obj = new JsonObject();
obj.put("profiles", userProfiles); JsonArray profilesArray = gson.toJsonTree(userProfiles).getAsJsonArray();
obj.put("numPages", DataStore.NUM_PAGES);
resp.getOutputStream().write((obj.toString()).getBytes()); obj.add("profiles", profilesArray);
obj.addProperty("numPages", DataStore.NUM_PAGES);
resp.getOutputStream().write(gson.toJson(obj).getBytes());
resp.setStatus(200); resp.setStatus(200);
} }
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment