From ae2423b2e99af3fab79c0e7a198d2ed2bef95255 Mon Sep 17 00:00:00 2001
From: bgamard <b.gamard@sismics.com>
Date: Wed, 3 Apr 2024 21:53:00 +0200
Subject: [PATCH] remove check_username route

---
 .../docs/rest/resource/UserResource.java      | 37 +------------------
 .../sismics/docs/rest/TestUserResource.java   |  9 -----
 2 files changed, 2 insertions(+), 44 deletions(-)

diff --git a/docs-web/src/main/java/com/sismics/docs/rest/resource/UserResource.java b/docs-web/src/main/java/com/sismics/docs/rest/resource/UserResource.java
index 841ef25e2..bb6de6568 100644
--- a/docs-web/src/main/java/com/sismics/docs/rest/resource/UserResource.java
+++ b/docs-web/src/main/java/com/sismics/docs/rest/resource/UserResource.java
@@ -30,8 +30,6 @@
 import com.sismics.util.filter.TokenBasedSecurityFilter;
 import com.sismics.util.totp.GoogleAuthenticator;
 import com.sismics.util.totp.GoogleAuthenticatorKey;
-import org.apache.commons.lang3.StringUtils;
-
 import jakarta.json.Json;
 import jakarta.json.JsonArrayBuilder;
 import jakarta.json.JsonObjectBuilder;
@@ -40,6 +38,8 @@
 import jakarta.ws.rs.core.MediaType;
 import jakarta.ws.rs.core.NewCookie;
 import jakarta.ws.rs.core.Response;
+import org.apache.commons.lang3.StringUtils;
+
 import java.util.Date;
 import java.util.List;
 import java.util.Set;
@@ -256,39 +256,6 @@ public Response update(
         return Response.ok().entity(response.build()).build();
     }
 
-    /**
-     * Checks if a username is available.
-     * Search only on active accounts.
-     *
-     * @api {get} /user/check_username Check username availability
-     * @apiName GetUserCheckUsername
-     * @apiGroup User
-     * @apiParam {String} username Username
-     * @apiSuccess {String} status Status OK or KO
-     * @apiPermission none
-     * @apiVersion 1.5.0
-     *
-     * @param username Username to check
-     * @return Response
-     */
-    @GET
-    @Path("check_username")
-    public Response checkUsername(
-        @QueryParam("username") String username) {
-        UserDao userDao = new UserDao();
-        User user = userDao.getActiveByUsername(username);
-        
-        JsonObjectBuilder response = Json.createObjectBuilder();
-        if (user != null) {
-            response.add("status", "ko")
-                    .add("message", "Username already registered");
-        } else {
-            response.add("status", "ok");
-        }
-        
-        return Response.ok().entity(response.build()).build();
-    }
-
     /**
      * This resource is used to authenticate the user and create a user session.
      * The "session" is only used to identify the user, no other data is stored in the session.
diff --git a/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java b/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java
index e716c8d1d..7dcae5d20 100644
--- a/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java
+++ b/docs-web/src/test/java/com/sismics/docs/rest/TestUserResource.java
@@ -128,15 +128,6 @@ public void testUserResource() {
         json = response.readEntity(JsonObject.class);
         Assert.assertEquals("AlreadyExistingUsername", json.getString("type"));
 
-        // Check if a username is free : OK
-        target().path("/user/check_username").queryParam("username", "carol").request().get(JsonObject.class);
-
-        // Check if a username is free : KO
-        response = target().path("/user/check_username").queryParam("username", "alice").request().get();
-        Assert.assertEquals(Status.OK, Status.fromStatusCode(response.getStatus()));
-        json = response.readEntity(JsonObject.class);
-        Assert.assertEquals("ko", json.getString("status"));
-
         // Login alice with extra whitespaces
         response = target().path("/user/login").request()
                 .post(Entity.form(new Form()