From d36c2d87a7a35c77a509428e7fd31e7a04b0691c Mon Sep 17 00:00:00 2001 From: Trisha Anand Date: Fri, 27 Dec 2024 18:05:31 +0530 Subject: [PATCH] chore: Adding host as a parameter for get home page workspaces API (#38392) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Description Helper refactor for Seat based pricing feature for recording the deployment host Fixes #`Issue Number` _or_ Fixes `Issue URL` > [!WARNING] > _If no issue exists, please create an issue first, and check with the maintainers if the issue is valid._ ## Automation /test sanity ### :mag: Cypress test results > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: > Commit: 481dcbce46d2fbcbb915a087f41e9c4db9de71e0 > Cypress dashboard. > Tags: `@tag.Sanity` > Spec: >
Fri, 27 Dec 2024 12:14:36 UTC ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No ## Summary by CodeRabbit - **New Features** - Enhanced workspace retrieval functionality to support optional hostname parameter in user workspace requests. - **Bug Fixes** - Improved handling of user workspaces based on recently used order with the inclusion of hostname. --- .../server/controllers/ce/WorkspaceControllerCE.java | 5 +++-- .../appsmith/server/services/ce/UserWorkspaceServiceCE.java | 2 +- .../server/services/ce/UserWorkspaceServiceCEImpl.java | 2 +- .../server/services/UserWorkspaceServiceUnitTest.java | 4 ++-- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/WorkspaceControllerCE.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/WorkspaceControllerCE.java index e64efd8992..f8ae8565e8 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/WorkspaceControllerCE.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/controllers/ce/WorkspaceControllerCE.java @@ -108,9 +108,10 @@ public class WorkspaceControllerCE { @JsonView(Views.Public.class) @GetMapping("/home") - public Mono>> workspacesForHome() { + public Mono>> workspacesForHome( + @RequestHeader(name = "Host", required = false) String hostname) { return userWorkspaceService - .getUserWorkspacesByRecentlyUsedOrder() + .getUserWorkspacesByRecentlyUsedOrder(hostname) .map(workspaces -> new ResponseDTO<>(HttpStatus.OK.value(), workspaces, null)); } } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCE.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCE.java index ee1082921e..ad976da77e 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCE.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCE.java @@ -24,5 +24,5 @@ public interface UserWorkspaceServiceCE { Boolean isLastAdminRoleEntity(PermissionGroup permissionGroup); - Mono> getUserWorkspacesByRecentlyUsedOrder(); + Mono> getUserWorkspacesByRecentlyUsedOrder(String hostname); } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCEImpl.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCEImpl.java index d86b285248..3430bb83b9 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCEImpl.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/services/ce/UserWorkspaceServiceCEImpl.java @@ -393,7 +393,7 @@ public class UserWorkspaceServiceCEImpl implements UserWorkspaceServiceCE { * @return Mono of list of workspaces */ @Override - public Mono> getUserWorkspacesByRecentlyUsedOrder() { + public Mono> getUserWorkspacesByRecentlyUsedOrder(String hostname) { Mono> workspaceIdsMono = userDataService .getForCurrentUser() diff --git a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/UserWorkspaceServiceUnitTest.java b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/UserWorkspaceServiceUnitTest.java index 6bdc1323fb..22b53e0cce 100644 --- a/app/server/appsmith-server/src/test/java/com/appsmith/server/services/UserWorkspaceServiceUnitTest.java +++ b/app/server/appsmith-server/src/test/java/com/appsmith/server/services/UserWorkspaceServiceUnitTest.java @@ -247,7 +247,7 @@ public class UserWorkspaceServiceUnitTest { cleanup(); createDummyWorkspaces().blockLast(); - StepVerifier.create(userWorkspaceService.getUserWorkspacesByRecentlyUsedOrder()) + StepVerifier.create(userWorkspaceService.getUserWorkspacesByRecentlyUsedOrder(null)) .assertNext(workspaces -> { assertThat(workspaces).hasSize(4); workspaces.forEach(workspace -> { @@ -274,7 +274,7 @@ public class UserWorkspaceServiceUnitTest { userData.setRecentlyUsedEntityIds(recentlyUsedEntityDTOs); doReturn(Mono.just(userData)).when(userDataService).getForCurrentUser(); - StepVerifier.create(userWorkspaceService.getUserWorkspacesByRecentlyUsedOrder()) + StepVerifier.create(userWorkspaceService.getUserWorkspacesByRecentlyUsedOrder(null)) .assertNext(workspaces -> { assertThat(workspaces).hasSize(4); List fetchedWorkspaceIds = new ArrayList<>();