reverted jsonview changes on controllers (#21626)

This PR reverts the changes on controller method that happened by
mistake. It adds JsonView annotation on all controller methods.

Earlier PR: https://github.com/appsmithorg/appsmith/pull/20086
This commit is contained in:
sidhantgoel 2023-03-22 13:12:50 +05:30 committed by GitHub
parent 99b03f2fa0
commit c295d0618a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
27 changed files with 251 additions and 0 deletions

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ActionCollectionDTO;
@ -11,6 +12,8 @@ import com.appsmith.server.dtos.RefactorActionNameInCollectionDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ActionCollectionService;
import com.appsmith.server.services.LayoutCollectionService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -43,6 +46,7 @@ public class ActionCollectionControllerCE {
this.layoutCollectionService = layoutCollectionService;
}
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<ActionCollectionDTO>> create(@Valid @RequestBody ActionCollectionDTO resource,
@ -52,6 +56,7 @@ public class ActionCollectionControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("")
public Mono<ResponseDTO<List<ActionCollectionDTO>>> getAllUnpublishedActionCollections(
@RequestParam MultiValueMap<String, String> params,
@ -62,6 +67,7 @@ public class ActionCollectionControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@PutMapping("/move")
public Mono<ResponseDTO<ActionCollectionDTO>> moveActionCollection(@RequestBody @Valid ActionCollectionMoveDTO actionCollectionMoveDTO,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -70,6 +76,7 @@ public class ActionCollectionControllerCE {
.map(actionCollection -> new ResponseDTO<>(HttpStatus.OK.value(), actionCollection, null));
}
@JsonView(Views.Public.class)
@PutMapping("/refactor")
public Mono<ResponseDTO<LayoutDTO>> refactorActionCollectionName(@RequestBody RefactorActionCollectionNameDTO refactorActionCollectionNameDTO,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -77,6 +84,7 @@ public class ActionCollectionControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.OK.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/view")
public Mono<ResponseDTO<List<ActionCollectionViewDTO>>> getAllPublishedActionCollections(@RequestParam String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -86,6 +94,7 @@ public class ActionCollectionControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{id}")
public Mono<ResponseDTO<ActionCollectionDTO>> updateActionCollection(@PathVariable String id,
@Valid @RequestBody ActionCollectionDTO resource,
@ -95,6 +104,7 @@ public class ActionCollectionControllerCE {
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@PutMapping("/refactorAction")
public Mono<ResponseDTO<LayoutDTO>> refactorActionCollection(@Valid @RequestBody RefactorActionNameInCollectionDTO resource,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -103,6 +113,7 @@ public class ActionCollectionControllerCE {
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/{id}")
public Mono<ResponseDTO<ActionCollectionDTO>> deleteActionCollection(@PathVariable String id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {

View File

@ -1,6 +1,7 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.ActionExecutionResult;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.external.models.ActionDTO;
@ -12,6 +13,8 @@ import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.LayoutActionService;
import com.appsmith.server.services.NewActionService;
import com.appsmith.server.solutions.RefactoringSolution;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -52,6 +55,7 @@ public class ActionControllerCE {
this.refactoringSolution = refactoringSolution;
}
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<ActionDTO>> createAction(@Valid @RequestBody ActionDTO resource,
@ -63,6 +67,7 @@ public class ActionControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{defaultActionId}")
public Mono<ResponseDTO<ActionDTO>> updateAction(@PathVariable String defaultActionId,
@Valid @RequestBody ActionDTO resource,
@ -72,6 +77,7 @@ public class ActionControllerCE {
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@PostMapping(value = "/execute", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public Mono<ResponseDTO<ActionExecutionResult>> executeAction(@RequestBody Flux<Part> partFlux,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName,
@ -80,6 +86,7 @@ public class ActionControllerCE {
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@PutMapping("/move")
public Mono<ResponseDTO<ActionDTO>> moveAction(@RequestBody @Valid ActionMoveDTO actionMoveDTO,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -88,6 +95,7 @@ public class ActionControllerCE {
.map(action -> new ResponseDTO<>(HttpStatus.OK.value(), action, null));
}
@JsonView(Views.Public.class)
@PutMapping("/refactor")
public Mono<ResponseDTO<LayoutDTO>> refactorActionName(@RequestBody RefactorActionNameDTO refactorActionNameDTO,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -95,6 +103,7 @@ public class ActionControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.OK.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/view")
public Mono<ResponseDTO<List<ActionViewDTO>>> getActionsForViewMode(@RequestParam String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -102,6 +111,7 @@ public class ActionControllerCE {
.map(actions -> new ResponseDTO<>(HttpStatus.OK.value(), actions, null));
}
@JsonView(Views.Public.class)
@PutMapping("/executeOnLoad/{defaultActionId}")
public Mono<ResponseDTO<ActionDTO>> setExecuteOnLoad(@PathVariable String defaultActionId,
@RequestParam Boolean flag,
@ -111,6 +121,7 @@ public class ActionControllerCE {
.map(action -> new ResponseDTO<>(HttpStatus.OK.value(), action, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/{id}")
public Mono<ResponseDTO<ActionDTO>> deleteAction(@PathVariable String id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -129,6 +140,7 @@ public class ActionControllerCE {
* @param params
* @return
*/
@JsonView(Views.Public.class)
@GetMapping("")
public Mono<ResponseDTO<List<ActionDTO>>> getAllUnpublishedActions(@RequestParam MultiValueMap<String, String> params,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {

View File

@ -1,6 +1,7 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.Datasource;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Application;
@ -24,6 +25,7 @@ import com.appsmith.server.solutions.ApplicationFetcher;
import com.appsmith.server.solutions.ApplicationForkingService;
import com.appsmith.server.solutions.ImportExportApplicationService;
import jakarta.validation.Valid;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpHeaders;
@ -78,6 +80,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
this.applicationSnapshotService = applicationSnapshotService;
}
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Application>> create(@Valid @RequestBody Application resource,
@ -91,6 +94,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PostMapping("/publish/{defaultApplicationId}")
public Mono<ResponseDTO<Boolean>> publish(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -98,6 +102,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.thenReturn(new ResponseDTO<>(HttpStatus.OK.value(), true, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{defaultApplicationId}/page/{defaultPageId}/makeDefault")
public Mono<ResponseDTO<Application>> makeDefault(@PathVariable String defaultApplicationId,
@PathVariable String defaultPageId,
@ -106,6 +111,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(updatedApplication -> new ResponseDTO<>(HttpStatus.OK.value(), updatedApplication, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{defaultApplicationId}/page/{defaultPageId}/reorder")
public Mono<ResponseDTO<ApplicationPagesDTO>> reorderPage(
@PathVariable String defaultApplicationId,
@ -117,6 +123,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
}
@Override
@JsonView(Views.Public.class)
@DeleteMapping("/{id}")
public Mono<ResponseDTO<Application>> delete(@PathVariable String id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -125,6 +132,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(deletedResource -> new ResponseDTO<>(HttpStatus.OK.value(), deletedResource, null));
}
@JsonView(Views.Public.class)
@GetMapping("/new")
public Mono<ResponseDTO<UserHomepageDTO>> getAllApplicationsForHome() {
log.debug("Going to get all applications grouped by workspace");
@ -132,6 +140,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(applications -> new ResponseDTO<>(HttpStatus.OK.value(), applications, null));
}
@JsonView(Views.Public.class)
@GetMapping("/releaseItems")
public Mono<ResponseDTO<ReleaseItemsDTO>> getReleaseItemsInformation() {
log.debug("Going to get version release items");
@ -139,6 +148,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(applications -> new ResponseDTO<>(HttpStatus.OK.value(), applications, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{defaultApplicationId}/changeAccess")
public Mono<ResponseDTO<Application>> shareApplication(@PathVariable String defaultApplicationId,
@RequestBody ApplicationAccessDTO applicationAccessDTO,
@ -148,6 +158,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@PostMapping("/clone/{applicationId}")
public Mono<ResponseDTO<Application>> cloneApplication(@PathVariable String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -155,6 +166,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/view/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> getApplicationInViewMode(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -162,6 +174,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@PostMapping("/{defaultApplicationId}/fork/{workspaceId}")
public Mono<ResponseDTO<Application>> forkApplication(
@PathVariable String defaultApplicationId,
@ -171,6 +184,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@GetMapping("/export/{id}")
public Mono<ResponseEntity<Object>> getApplicationFile(@PathVariable String id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -184,6 +198,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
});
}
@JsonView(Views.Public.class)
@PostMapping("/snapshot/{id}")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Boolean>> createSnapshot(@PathVariable String id, @RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -193,6 +208,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(result -> new ResponseDTO<>(HttpStatus.CREATED.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/snapshot/{id}")
public Mono<ResponseDTO<ApplicationSnapshot>> getSnapshotWithoutApplicationJson(@PathVariable String id, @RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
log.debug("Going to get snapshot with application id: {}, branch: {}", id, branchName);
@ -201,6 +217,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(applicationSnapshot -> new ResponseDTO<>(HttpStatus.OK.value(), applicationSnapshot, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/snapshot/{id}")
public Mono<ResponseDTO<Boolean>> deleteSnapshotWithoutApplicationJson(@PathVariable String id, @RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
log.debug("Going to delete snapshot with application id: {}, branch: {}", id, branchName);
@ -209,6 +226,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(isDeleted -> new ResponseDTO<>(HttpStatus.OK.value(), isDeleted, null));
}
@JsonView(Views.Public.class)
@PostMapping("/snapshot/{id}/restore")
public Mono<ResponseDTO<Application>> restoreSnapshot(@PathVariable String id, @RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
log.debug("Going to restore snapshot with application id: {}, branch: {}", id, branchName);
@ -217,6 +235,8 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@PostMapping(value = "/import/{workspaceId}", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public Mono<ResponseDTO<ApplicationImportDTO>> importApplicationFromFile(@RequestPart("file") Mono<Part> fileMono,
@PathVariable String workspaceId) {
@ -226,6 +246,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(fetchedResource -> new ResponseDTO<>(HttpStatus.OK.value(), fetchedResource, null));
}
@JsonView(Views.Public.class)
@PostMapping("/ssh-keypair/{applicationId}")
public Mono<ResponseDTO<GitAuth>> generateSSHKeyPair(@PathVariable String applicationId,
@RequestParam(required = false) String keyType) {
@ -233,6 +254,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/ssh-keypair/{applicationId}")
public Mono<ResponseDTO<GitAuthDTO>> getSSHKey(@PathVariable String applicationId) {
return service.getSshKey(applicationId)
@ -240,6 +262,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
}
@Override
@JsonView(Views.Public.class)
@PutMapping("/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> update(@PathVariable String defaultApplicationId,
@RequestBody Application resource,
@ -249,18 +272,21 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@PatchMapping("{applicationId}/themes/{themeId}")
public Mono<ResponseDTO<Theme>> setCurrentTheme(@PathVariable String applicationId, @PathVariable String themeId, @RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
return themeService.changeCurrentTheme(themeId, applicationId, branchName)
.map(theme -> new ResponseDTO<>(HttpStatus.OK.value(), theme, null));
}
@JsonView(Views.Public.class)
@GetMapping("/import/{workspaceId}/datasources")
public Mono<ResponseDTO<List<Datasource>>> getUnConfiguredDatasource(@PathVariable String workspaceId, @RequestParam String defaultApplicationId) {
return importExportApplicationService.findDatasourceByApplicationId(defaultApplicationId, workspaceId)
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping(value = "/{defaultApplicationId}/logo", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public Mono<ResponseDTO<Application>> uploadAppNavigationLogo(@PathVariable String defaultApplicationId,
@RequestPart("file") Mono<Part> fileMono,
@ -270,6 +296,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
.map(url -> new ResponseDTO<>(HttpStatus.OK.value(), url, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/{defaultApplicationId}/logo")
public Mono<ResponseDTO<Void>> deleteAppNavigationLogo(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName){
@ -280,6 +307,7 @@ public class ApplicationControllerCE extends BaseController<ApplicationService,
// !! This API endpoint should not be exposed !!
@Override
@JsonView(Views.Public.class)
@GetMapping("")
public Mono<ResponseDTO<List<Application>>> getAll(@RequestParam MultiValueMap<String, String> params,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {

View File

@ -1,10 +1,13 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.dtos.ApplicationImportDTO;
import com.appsmith.server.dtos.ApplicationTemplate;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ApplicationTemplateService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.util.MultiValueMap;
@ -27,30 +30,35 @@ public class ApplicationTemplateControllerCE {
this.applicationTemplateService = applicationTemplateService;
}
@JsonView(Views.Public.class)
@GetMapping
public Mono<ResponseDTO<List<ApplicationTemplate>>> getAll() {
return applicationTemplateService.getActiveTemplates(null)
.map(templates -> new ResponseDTO<>(HttpStatus.OK.value(), templates, null));
}
@JsonView(Views.Public.class)
@GetMapping("{templateId}")
public Mono<ResponseDTO<ApplicationTemplate>> getTemplateDetails(@PathVariable String templateId) {
return applicationTemplateService.getTemplateDetails(templateId)
.map(templates -> new ResponseDTO<>(HttpStatus.OK.value(), templates, null));
}
@JsonView(Views.Public.class)
@GetMapping("{templateId}/similar")
public Mono<ResponseDTO<List<ApplicationTemplate>>> getSimilarTemplates(@PathVariable String templateId, @RequestParam MultiValueMap<String, String> params) {
return applicationTemplateService.getSimilarTemplates(templateId, params).collectList()
.map(templates -> new ResponseDTO<>(HttpStatus.OK.value(), templates, null));
}
@JsonView(Views.Public.class)
@GetMapping("filters")
public Mono<ResponseDTO<ApplicationTemplate>> getFilters() {
return applicationTemplateService.getFilters()
.map(filters -> new ResponseDTO<>(HttpStatus.OK.value(), filters, null));
}
@JsonView(Views.Public.class)
@PostMapping("{templateId}/import/{workspaceId}")
public Mono<ResponseDTO<ApplicationImportDTO>> importApplicationFromTemplate(@PathVariable String templateId,
@PathVariable String workspaceId) {
@ -58,12 +66,14 @@ public class ApplicationTemplateControllerCE {
.map(importedApp -> new ResponseDTO<>(HttpStatus.OK.value(), importedApp, null));
}
@JsonView(Views.Public.class)
@GetMapping("recent")
public Mono<ResponseDTO<List<ApplicationTemplate>>> getRecentlyUsedTemplates() {
return applicationTemplateService.getRecentlyUsedTemplates()
.map(templates -> new ResponseDTO<>(HttpStatus.OK.value(), templates, null));
}
@JsonView(Views.Public.class)
@PostMapping("{templateId}/merge/{applicationId}/{organizationId}")
public Mono<ResponseDTO<ApplicationImportDTO>> mergeTemplateWithApplication(@PathVariable String templateId,
@PathVariable String applicationId,

View File

@ -1,7 +1,10 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.services.AssetService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpHeaders;
import org.springframework.web.bind.annotation.GetMapping;
@ -16,6 +19,7 @@ public class AssetControllerCE {
private final AssetService service;
@JsonView(Views.Public.class)
@GetMapping("/{id}")
public Mono<Void> getById(@PathVariable String id, ServerWebExchange exchange) {
exchange.getResponse().getHeaders().set(HttpHeaders.CACHE_CONTROL, "public, max-age=7776000, immutable");

View File

@ -1,9 +1,12 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.BaseDomain;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.CrudService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
@ -31,6 +34,7 @@ public abstract class BaseController<S extends CrudService<T, ID>, T extends Bas
protected final S service;
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<T>> create(@Valid @RequestBody T resource,
@ -49,6 +53,7 @@ public abstract class BaseController<S extends CrudService<T, ID>, T extends Bas
* @param params
* @return
*/
@JsonView(Views.Public.class)
@GetMapping("")
public Mono<ResponseDTO<List<T>>> getAll(@RequestParam MultiValueMap<String, String> params,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -61,6 +66,7 @@ public abstract class BaseController<S extends CrudService<T, ID>, T extends Bas
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{id}")
public Mono<ResponseDTO<T>> getByIdAndBranchName(@PathVariable ID id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -69,6 +75,7 @@ public abstract class BaseController<S extends CrudService<T, ID>, T extends Bas
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{id}")
public Mono<ResponseDTO<T>> update(@PathVariable ID id,
@RequestBody T resource,
@ -78,6 +85,7 @@ public abstract class BaseController<S extends CrudService<T, ID>, T extends Bas
.map(updatedResource -> new ResponseDTO<>(HttpStatus.OK.value(), updatedResource, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/{id}")
public Mono<ResponseDTO<T>> delete(@PathVariable ID id,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {

View File

@ -1,9 +1,12 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Config;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ConfigService;
import com.fasterxml.jackson.annotation.JsonView;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
@ -20,12 +23,14 @@ public class ConfigControllerCE {
this.service = service;
}
@JsonView(Views.Public.class)
@GetMapping("/name/{name}")
public Mono<ResponseDTO<Config>> getByName(@PathVariable String name) {
return service.getByName(name)
.map(resource -> new ResponseDTO<>(HttpStatus.OK.value(), resource, null));
}
@JsonView(Views.Public.class)
@PutMapping("/name/{name}")
public Mono<ResponseDTO<Config>> updateByName(@PathVariable String name, @RequestBody Config config) {
return service.updateByName(config)

View File

@ -1,10 +1,13 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.CustomJSLib;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.CustomJSLibService;
import com.fasterxml.jackson.annotation.JsonView;
import jakarta.validation.Valid;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
@ -27,6 +30,7 @@ public class CustomJSLibControllerCE {
this.customJSLibService = customJSLibService;
}
@JsonView(Views.Public.class)
@PatchMapping("/{applicationId}/add")
public Mono<ResponseDTO<Boolean>> addJSLibToApplication(@RequestBody @Valid CustomJSLib customJSLib,
@PathVariable String applicationId, @RequestHeader(name =
@ -38,6 +42,7 @@ public class CustomJSLibControllerCE {
.map(actionCollection -> new ResponseDTO<>(HttpStatus.OK.value(), actionCollection, null));
}
@JsonView(Views.Public.class)
@PatchMapping("/{applicationId}/remove")
public Mono<ResponseDTO<Boolean>> removeJSLibFromApplication(@RequestBody @Valid CustomJSLib customJSLib,
@PathVariable String applicationId,
@ -51,6 +56,7 @@ public class CustomJSLibControllerCE {
.map(actionCollection -> new ResponseDTO<>(HttpStatus.OK.value(), actionCollection, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{applicationId}")
public Mono<ResponseDTO<List<CustomJSLib>>> getAllUserInstalledJSLibInApplication(@PathVariable String applicationId,
@RequestHeader(name =
@ -61,6 +67,7 @@ public class CustomJSLibControllerCE {
.map(actionCollection -> new ResponseDTO<>(HttpStatus.OK.value(), actionCollection, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{applicationId}/view")
public Mono<ResponseDTO<List<CustomJSLib>>> getAllUserInstalledJSLibInApplicationForViewMode(@PathVariable String applicationId,
@RequestHeader(name =FieldName.BRANCH_NAME,

View File

@ -7,6 +7,7 @@ import com.appsmith.external.models.DatasourceTestResult;
import com.appsmith.external.models.Property;
import com.appsmith.external.models.TriggerRequestDTO;
import com.appsmith.external.models.TriggerResultDTO;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.AuthorizationCodeCallbackDTO;
@ -18,6 +19,8 @@ import com.appsmith.server.services.MockDataService;
import com.appsmith.server.solutions.AuthenticationService;
import com.appsmith.server.solutions.DatasourceStructureSolution;
import com.appsmith.server.solutions.DatasourceTriggerSolution;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -61,6 +64,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
this.datasourceTriggerSolution = datasourceTriggerSolution;
}
@JsonView(Views.Public.class)
@PostMapping("/test")
public Mono<ResponseDTO<DatasourceTestResult>> testDatasource(@RequestBody Datasource datasource,
@RequestHeader(name = FieldName.ENVIRONMENT_NAME, required = false)
@ -71,6 +75,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
.map(testResult -> new ResponseDTO<>(HttpStatus.OK.value(), testResult, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{datasourceId}/structure")
public Mono<ResponseDTO<DatasourceStructure>> getStructure(@PathVariable String datasourceId,
@RequestParam(required = false, defaultValue = "false") Boolean ignoreCache,
@ -80,6 +85,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
.map(structure -> new ResponseDTO<>(HttpStatus.OK.value(), structure, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{datasourceId}/pages/{pageId}/code")
public Mono<Void> getTokenRequestUrl(@PathVariable String datasourceId, @PathVariable String pageId, ServerWebExchange serverWebExchange) {
log.debug("Going to retrieve token request URL for datasource with id: {} and page id: {}", datasourceId, pageId);
@ -91,6 +97,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
});
}
@JsonView(Views.Public.class)
@GetMapping("/authorize")
public Mono<Void> getAccessToken(AuthorizationCodeCallbackDTO callbackDTO, ServerWebExchange serverWebExchange) {
log.debug("Received callback for an OAuth2 authorization request");
@ -102,18 +109,21 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
});
}
@JsonView(Views.Public.class)
@GetMapping("/mocks")
public Mono<ResponseDTO<List<MockDataSet>>> getMockDataSets() {
return mockDataService.getMockDataSet()
.map(config -> new ResponseDTO<>(HttpStatus.OK.value(), config.getMockdbs(), null));
}
@JsonView(Views.Public.class)
@PostMapping("/mocks")
public Mono<ResponseDTO<Datasource>> createMockDataSet(@RequestBody MockDataSource mockDataSource) {
return mockDataService.createMockDataSet(mockDataSource)
.map(datasource -> new ResponseDTO<>(HttpStatus.OK.value(), datasource, null));
}
@JsonView(Views.Public.class)
@PutMapping("/datasource-query/{datasourceId}")
public Mono<ResponseDTO<ActionExecutionResult>> runQueryOnDatasource(@PathVariable String datasourceId,
@Valid @RequestBody List<Property> pluginSpecifiedTemplates) {
@ -122,6 +132,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
.map(metadata -> new ResponseDTO<>(HttpStatus.OK.value(), metadata, null));
}
@JsonView(Views.Public.class)
@PostMapping("/{datasourceId}/trigger")
public Mono<ResponseDTO<TriggerResultDTO>> trigger(@PathVariable String datasourceId,
@RequestBody TriggerRequestDTO triggerRequestDTO,
@ -132,6 +143,7 @@ public class DatasourceControllerCE extends BaseController<DatasourceService, Da
}
@Override
@JsonView(Views.Public.class)
@PutMapping("/{id}")
public Mono<ResponseDTO<Datasource>> update(@PathVariable String id,
@RequestBody Datasource resource,

View File

@ -4,6 +4,7 @@ import com.appsmith.external.dtos.GitBranchDTO;
import com.appsmith.external.dtos.GitLogDTO;
import com.appsmith.external.dtos.GitStatusDTO;
import com.appsmith.external.dtos.MergeStatusDTO;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Application;
@ -20,6 +21,8 @@ import com.appsmith.server.dtos.GitPullDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.helpers.GitDeployKeyGenerator;
import com.appsmith.server.services.GitService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -56,6 +59,7 @@ public class GitControllerCE {
* Note : The master branch here refers to the app that was created even before connecting to git
* */
@JsonView(Views.Public.class)
@PostMapping("/profile/default")
public Mono<ResponseDTO<Map<String, GitProfile>>> saveGitProfile(@RequestBody GitProfile gitProfile) {
log.debug("Going to add default git profile for user");
@ -63,6 +67,7 @@ public class GitControllerCE {
.map(response -> new ResponseDTO<>(HttpStatus.OK.value(), response, null));
}
@JsonView(Views.Public.class)
@PutMapping("/profile/app/{defaultApplicationId}")
public Mono<ResponseDTO<Map<String, GitProfile>>> saveGitProfile(@PathVariable String defaultApplicationId,
@RequestBody GitProfile gitProfile) {
@ -71,24 +76,28 @@ public class GitControllerCE {
.map(response -> new ResponseDTO<>(HttpStatus.ACCEPTED.value(), response, null));
}
@JsonView(Views.Public.class)
@GetMapping("/profile/default")
public Mono<ResponseDTO<GitProfile>> getDefaultGitConfigForUser() {
return service.getDefaultGitProfileOrCreateIfEmpty()
.map(gitConfigResponse -> new ResponseDTO<>(HttpStatus.OK.value(), gitConfigResponse, null));
}
@JsonView(Views.Public.class)
@GetMapping("/profile/app/{defaultApplicationId}")
public Mono<ResponseDTO<GitProfile>> getGitConfigForUser(@PathVariable String defaultApplicationId) {
return service.getGitProfileForUser(defaultApplicationId)
.map(gitConfigResponse -> new ResponseDTO<>(HttpStatus.OK.value(), gitConfigResponse, null));
}
@JsonView(Views.Public.class)
@GetMapping("/metadata/app/{defaultApplicationId}")
public Mono<ResponseDTO<GitApplicationMetadata>> getGitMetadata(@PathVariable String defaultApplicationId) {
return service.getGitApplicationMetadata(defaultApplicationId)
.map(metadata -> new ResponseDTO<>(HttpStatus.OK.value(), metadata, null));
}
@JsonView(Views.Public.class)
@PostMapping("/connect/app/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> connectApplicationToRemoteRepo(@PathVariable String defaultApplicationId,
@RequestBody GitConnectDTO gitConnectDTO,
@ -97,6 +106,7 @@ public class GitControllerCE {
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@PostMapping("/commit/app/{defaultApplicationId}")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<String>> commit(@RequestBody GitCommitDTO commitDTO,
@ -108,6 +118,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.CREATED.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/commit-history/app/{defaultApplicationId}")
public Mono<ResponseDTO<List<GitLogDTO>>> getCommitHistory(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -116,6 +127,7 @@ public class GitControllerCE {
.map(logs -> new ResponseDTO<>(HttpStatus.OK.value(), logs, null));
}
@JsonView(Views.Public.class)
@PostMapping("/push/app/{defaultApplicationId}")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<String>> push(@PathVariable String defaultApplicationId,
@ -125,6 +137,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.CREATED.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/create-branch/app/{defaultApplicationId}")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Application>> createBranch(@PathVariable String defaultApplicationId,
@ -135,6 +148,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.CREATED.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/checkout-branch/app/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> checkoutBranch(@PathVariable String defaultApplicationId,
@RequestParam(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -143,6 +157,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/disconnect/app/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> disconnectFromRemote(@PathVariable String defaultApplicationId) {
log.debug("Going to remove the remoteUrl for application {}", defaultApplicationId);
@ -150,6 +165,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/pull/app/{defaultApplicationId}")
public Mono<ResponseDTO<GitPullDTO>> pull(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -158,6 +174,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/branch/app/{defaultApplicationId}")
public Mono<ResponseDTO<List<GitBranchDTO>>> branch(@PathVariable String defaultApplicationId,
@RequestParam(required = false, defaultValue = "false") Boolean pruneBranches,
@ -167,6 +184,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/status/app/{defaultApplicationId}")
public Mono<ResponseDTO<GitStatusDTO>> getStatus(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -175,6 +193,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/merge/app/{defaultApplicationId}")
public Mono<ResponseDTO<MergeStatusDTO>> merge(@PathVariable String defaultApplicationId,
@RequestBody GitMergeDTO gitMergeDTO) {
@ -183,6 +202,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/merge/status/app/{defaultApplicationId}")
public Mono<ResponseDTO<MergeStatusDTO>> mergeStatus(@PathVariable String defaultApplicationId,
@RequestBody GitMergeDTO gitMergeDTO) {
@ -191,6 +211,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/conflicted-branch/app/{defaultApplicationId}")
public Mono<ResponseDTO<String>> createConflictedBranch(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME) String branchName) {
@ -199,12 +220,14 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/import/keys")
public Mono<ResponseDTO<GitAuth>> generateKeyForGitImport(@RequestParam(required = false) String keyType) {
return service.generateSSHKey(keyType)
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PostMapping("/import/{workspaceId}")
public Mono<ResponseDTO<ApplicationImportDTO>> importApplicationFromGit(@PathVariable String workspaceId,
@RequestBody GitConnectDTO gitConnectDTO) {
@ -212,12 +235,14 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>(HttpStatus.CREATED.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/test-connection/app/{defaultApplicationId}")
public Mono<ResponseDTO<Boolean>> testGitConnection(@PathVariable String defaultApplicationId) {
return service.testConnection(defaultApplicationId)
.map(result -> new ResponseDTO<>((HttpStatus.OK.value()), result, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/branch/app/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> deleteBranch(@PathVariable String defaultApplicationId, @RequestParam String branchName) {
log.debug("Going to delete branch {} for defaultApplicationId {}", branchName, defaultApplicationId);
@ -225,6 +250,7 @@ public class GitControllerCE {
.map(application -> new ResponseDTO<>(HttpStatus.OK.value(), application, null));
}
@JsonView(Views.Public.class)
@PutMapping("/discard/app/{defaultApplicationId}")
public Mono<ResponseDTO<Application>> discardChanges(@PathVariable String defaultApplicationId,
@RequestHeader(name = FieldName.BRANCH_NAME) String branchName) {
@ -233,6 +259,7 @@ public class GitControllerCE {
.map(result -> new ResponseDTO<>((HttpStatus.OK.value()), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/protocol/key-types")
public Mono<ResponseDTO<List<GitDeployKeyDTO>>> getSupportedKeys() {
log.debug("Going to list the list of supported keys");
@ -240,6 +267,7 @@ public class GitControllerCE {
.map(gitDeployKeyDTOS -> new ResponseDTO<>(HttpStatus.OK.value(), gitDeployKeyDTOS, null));
}
@JsonView(Views.Public.class)
@GetMapping("/doc-urls")
public Mono<ResponseDTO<List<GitDocsDTO>>> getGitDocs() {
return service.getGitDocUrls()

View File

@ -1,8 +1,11 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.HealthCheckService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.AllArgsConstructor;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
@ -14,6 +17,7 @@ import reactor.core.publisher.Mono;
public class HealthCheckControllerCE {
private final HealthCheckService healthCheckService;
@JsonView(Views.Public.class)
@GetMapping
public Mono<ResponseDTO<String>> getHealth() {
return healthCheckService.getHealth().map(health -> new ResponseDTO<>(HttpStatus.OK.value(), health, null));

View File

@ -1,7 +1,10 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.domains.User;
import com.appsmith.server.services.SessionUserService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.data.redis.core.ReactiveRedisTemplate;
@ -21,6 +24,7 @@ public class IndexControllerCE {
private final ReactiveRedisTemplate<String, String> reactiveTemplate;
private final ChannelTopic topic;
@JsonView(Views.Public.class)
@GetMapping
public Mono<String> index(Mono<Principal> principal) {
Mono<User> userMono = service.getCurrentUser();
@ -33,6 +37,7 @@ public class IndexControllerCE {
* This function is primarily for testing if we can publish to Redis successfully. If yes, the response should be
* non-zero value number of subscribers who've successfully gotten the published message
*/
@JsonView(Views.Public.class)
@GetMapping("/redisPub")
public Mono<Long> pubRedisMessage() {
return reactiveTemplate.convertAndSend(topic.getTopic(), "This is a test message");

View File

@ -1,10 +1,13 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.EnvChangesResponseDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.dtos.TestEmailConfigRequestDTO;
import com.appsmith.server.solutions.EnvManager;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
@ -27,6 +30,7 @@ public class InstanceAdminControllerCE {
private final EnvManager envManager;
@JsonView(Views.Public.class)
@GetMapping("/env")
public Mono<ResponseDTO<Map<String, String>>> getAll() {
log.debug("Getting all env configuration");
@ -34,6 +38,7 @@ public class InstanceAdminControllerCE {
.map(data -> new ResponseDTO<>(HttpStatus.OK.value(), data, null));
}
@JsonView(Views.Public.class)
@GetMapping("/env/download")
public Mono<Void> download(ServerWebExchange exchange) {
log.debug("Getting all env configuration");
@ -41,6 +46,7 @@ public class InstanceAdminControllerCE {
}
@Deprecated
@JsonView(Views.Public.class)
@PutMapping(value = "/env", consumes = {MediaType.APPLICATION_JSON_VALUE})
public Mono<ResponseDTO<EnvChangesResponseDTO>> saveEnvChangesJSON(
@Valid @RequestBody Map<String, String> changes
@ -50,6 +56,7 @@ public class InstanceAdminControllerCE {
.map(res -> new ResponseDTO<>(HttpStatus.OK.value(), res, null));
}
@JsonView(Views.Public.class)
@PutMapping(value = "/env", consumes = {MediaType.MULTIPART_FORM_DATA_VALUE})
public Mono<ResponseDTO<EnvChangesResponseDTO>> saveEnvChangesMultipartFormData(
ServerWebExchange exchange
@ -60,6 +67,7 @@ public class InstanceAdminControllerCE {
.map(res -> new ResponseDTO<>(HttpStatus.OK.value(), res, null));
}
@JsonView(Views.Public.class)
@PostMapping("/restart")
public Mono<ResponseDTO<Boolean>> restart() {
log.debug("Received restart request");
@ -67,6 +75,7 @@ public class InstanceAdminControllerCE {
.thenReturn(new ResponseDTO<>(HttpStatus.OK.value(), true, null));
}
@JsonView(Views.Public.class)
@PostMapping("/send-test-email")
public Mono<ResponseDTO<Boolean>> sendTestEmail(@RequestBody @Valid TestEmailConfigRequestDTO requestDTO) {
log.debug("Sending test email");

View File

@ -2,10 +2,13 @@ package com.appsmith.server.controllers.ce;
import com.appsmith.server.constants.Url;
import com.appsmith.external.models.ActionDTO;
import com.appsmith.external.views.Views;
import com.appsmith.server.dtos.AddItemToPageDTO;
import com.appsmith.server.dtos.ItemDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ItemService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.util.MultiValueMap;
@ -27,6 +30,7 @@ public class ItemControllerCE {
this.service = service;
}
@JsonView(Views.Public.class)
@GetMapping("")
public Mono<ResponseDTO<List<ItemDTO>>> getAll(@RequestParam MultiValueMap<String, String> params) {
log.debug("Going to get all items by parameters " + params);
@ -34,6 +38,7 @@ public class ItemControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@PostMapping("/addToPage")
public Mono<ResponseDTO<ActionDTO>> addItemToPage(@RequestBody AddItemToPageDTO addItemToPageDTO) {
log.debug("Going to add item {} to page {} with new name {}", addItemToPageDTO.getMarketplaceElement().getItem().getName(),

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Layout;
@ -10,6 +11,8 @@ import com.appsmith.server.dtos.ce.UpdateMultiplePageLayoutDTO;
import com.appsmith.server.services.LayoutActionService;
import com.appsmith.server.services.LayoutService;
import com.appsmith.server.solutions.RefactoringSolution;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -44,6 +47,7 @@ public class LayoutControllerCE {
this.refactoringSolution = refactoringSolution;
}
@JsonView(Views.Public.class)
@PostMapping("/pages/{defaultPageId}")
public Mono<ResponseDTO<Layout>> createLayout(@PathVariable String defaultPageId,
@Valid @RequestBody Layout layout,
@ -52,6 +56,7 @@ public class LayoutControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{layoutId}/pages/{defaultPageId}")
public Mono<ResponseDTO<Layout>> getLayout(@PathVariable String defaultPageId,
@PathVariable String layoutId,
@ -60,6 +65,7 @@ public class LayoutControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.OK.value(), created, null));
}
@JsonView(Views.Public.class)
@PutMapping("/application/{applicationId}")
public Mono<ResponseDTO<Integer>> updateMultipleLayouts(@PathVariable String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName,
@ -69,6 +75,7 @@ public class LayoutControllerCE {
.map(updatedCount -> new ResponseDTO<>(HttpStatus.OK.value(), updatedCount, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{layoutId}/pages/{pageId}")
public Mono<ResponseDTO<LayoutDTO>> updateLayout(@PathVariable String pageId,
@RequestParam String applicationId,
@ -80,6 +87,7 @@ public class LayoutControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.OK.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{layoutId}/pages/{pageId}/view")
public Mono<ResponseDTO<Layout>> getLayoutView(@PathVariable String pageId,
@PathVariable String layoutId,
@ -88,6 +96,7 @@ public class LayoutControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.OK.value(), created, null));
}
@JsonView(Views.Public.class)
@PutMapping("/refactor")
public Mono<ResponseDTO<LayoutDTO>> refactorWidgetName(@RequestBody RefactorNameDTO refactorNameDTO,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {

View File

@ -2,11 +2,13 @@ package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.ApiTemplate;
import com.appsmith.external.models.Provider;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ProviderPaginatedDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.dtos.SearchResponseDTO;
import com.appsmith.server.services.MarketplaceService;
import com.fasterxml.jackson.annotation.JsonView;
import com.fasterxml.jackson.databind.ObjectMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
@ -30,6 +32,7 @@ public class MarketplaceControllerCE {
this.marketplaceService = marketplaceService;
}
@JsonView(Views.Public.class)
@GetMapping("/search")
Mono<ResponseDTO<SearchResponseDTO>> searchAPIOrProviders(@RequestParam String searchKey, @RequestParam(required = false) Integer limit) {
@ -41,6 +44,7 @@ public class MarketplaceControllerCE {
});
}
@JsonView(Views.Public.class)
@GetMapping("/templates")
public Mono<ResponseDTO<List<ApiTemplate>>> getAllTemplatesFromMarketplace(@RequestParam MultiValueMap<String, String> params) {
log.debug("Going to get all templates from Marketplace");
@ -48,6 +52,7 @@ public class MarketplaceControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@GetMapping("/providers")
public Mono<ResponseDTO<ProviderPaginatedDTO>> getAllProvidersFromMarketplace(@RequestParam MultiValueMap<String, String> params) {
log.debug("Going to get all providers from Marketplace");
@ -55,6 +60,7 @@ public class MarketplaceControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@GetMapping("/providers/{id}")
public Mono<ResponseDTO<Provider>> getProviderByIdFromMarketplace(@PathVariable String id) {
log.debug("Going to get provider from Marketplace with id {}", id);
@ -62,6 +68,7 @@ public class MarketplaceControllerCE {
.map(resource -> new ResponseDTO<>(HttpStatus.OK.value(), resource, null));
}
@JsonView(Views.Public.class)
@GetMapping("/categories")
public Mono<ResponseDTO<List<String>>> getAllCategoriesFromMarketplace() {
log.debug("Going to get all categories from Marketplace");

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Notification;
import com.appsmith.server.dtos.ResponseDTO;
@ -7,6 +8,8 @@ import com.appsmith.server.dtos.UpdateIsReadNotificationByIdDTO;
import com.appsmith.server.dtos.UpdateIsReadNotificationDTO;
import com.appsmith.server.exceptions.AppsmithException;
import com.appsmith.server.services.NotificationService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
@ -28,12 +31,14 @@ public class NotificationControllerCE extends BaseController<NotificationService
super(service);
}
@JsonView(Views.Public.class)
@GetMapping("count/unread")
public Mono<ResponseDTO<Long>> getUnreadCount() {
return service.getUnreadCount()
.map(response -> new ResponseDTO<>(HttpStatus.OK.value(), response, null));
}
@JsonView(Views.Public.class)
@PatchMapping("isRead")
public Mono<ResponseDTO<UpdateIsReadNotificationByIdDTO>> updateIsRead(
@RequestBody @Valid UpdateIsReadNotificationByIdDTO body) {
@ -43,6 +48,7 @@ public class NotificationControllerCE extends BaseController<NotificationService
);
}
@JsonView(Views.Public.class)
@PatchMapping("isRead/all")
public Mono<ResponseDTO<UpdateIsReadNotificationDTO>> updateIsRead(
@RequestBody @Valid UpdateIsReadNotificationDTO body) {

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.ApplicationMode;
@ -13,6 +14,8 @@ import com.appsmith.server.exceptions.AppsmithException;
import com.appsmith.server.services.ApplicationPageService;
import com.appsmith.server.services.NewPageService;
import com.appsmith.server.solutions.CreateDBTablePageSolution;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.NonNull;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -51,6 +54,7 @@ public class PageControllerCE {
this.createDBTablePageSolution = createDBTablePageSolution;
}
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<PageDTO>> createPage(@Valid @RequestBody PageDTO resource,
@ -62,6 +66,7 @@ public class PageControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PostMapping("/crud-page")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<CRUDPageResponseDTO>> createCRUDPage(@RequestBody @NonNull CRUDPageResourceDTO resource,
@ -71,6 +76,7 @@ public class PageControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PutMapping("/crud-page/{defaultPageId}")
@ResponseStatus(HttpStatus.OK)
public Mono<ResponseDTO<CRUDPageResponseDTO>> createCRUDPage(@PathVariable String defaultPageId,
@ -82,6 +88,7 @@ public class PageControllerCE {
}
@Deprecated
@JsonView(Views.Public.class)
@GetMapping("/application/{applicationId}")
public Mono<ResponseDTO<ApplicationPagesDTO>> getPageNamesByApplicationId(@PathVariable String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -89,6 +96,7 @@ public class PageControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@GetMapping("/view/application/{applicationId}")
public Mono<ResponseDTO<ApplicationPagesDTO>> getPageNamesByApplicationIdInViewMode(@PathVariable String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -96,6 +104,7 @@ public class PageControllerCE {
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{defaultPageId}")
public Mono<ResponseDTO<PageDTO>> getPageById(@PathVariable String defaultPageId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -104,6 +113,7 @@ public class PageControllerCE {
}
@JsonView(Views.Public.class)
@GetMapping("/{defaultPageId}/view")
public Mono<ResponseDTO<PageDTO>> getPageView(@PathVariable String defaultPageId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -111,6 +121,7 @@ public class PageControllerCE {
.map(page -> new ResponseDTO<>(HttpStatus.OK.value(), page, null));
}
@JsonView(Views.Public.class)
@GetMapping("{pageName}/application/{applicationName}/view")
public Mono<ResponseDTO<PageDTO>> getPageViewByName(@PathVariable String applicationName,
@PathVariable String pageName) {
@ -127,6 +138,7 @@ public class PageControllerCE {
* @param branchName git branch to find the exact page which needs to be deleted
* @return deleted page DTO
*/
@JsonView(Views.Public.class)
@DeleteMapping("/{defaultPageId}")
public Mono<ResponseDTO<PageDTO>> deletePage(@PathVariable String defaultPageId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -135,6 +147,7 @@ public class PageControllerCE {
.map(deletedResource -> new ResponseDTO<>(HttpStatus.OK.value(), deletedResource, null));
}
@JsonView(Views.Public.class)
@PostMapping("/clone/{defaultPageId}")
public Mono<ResponseDTO<PageDTO>> clonePage(@PathVariable String defaultPageId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -142,6 +155,7 @@ public class PageControllerCE {
.map(page -> new ResponseDTO<>(HttpStatus.CREATED.value(), page, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{defaultPageId}")
public Mono<ResponseDTO<PageDTO>> updatePage(@PathVariable String defaultPageId,
@RequestBody PageDTO resource,
@ -163,6 +177,7 @@ public class PageControllerCE {
* @param branchName name of the current branch
* @return List of ApplicationPagesDTO along with other meta data
*/
@JsonView(Views.Public.class)
@GetMapping
public Mono<ResponseDTO<ApplicationPagesDTO>> getAllPages(@RequestParam(required = false) String applicationId,
@RequestParam(required = false) String pageId,

View File

@ -1,11 +1,14 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Workspace;
import com.appsmith.server.domains.Plugin;
import com.appsmith.server.dtos.PluginWorkspaceDTO;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.PluginService;
import com.fasterxml.jackson.annotation.JsonView;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
@ -28,6 +31,7 @@ public class PluginControllerCE extends BaseController<PluginService, Plugin, St
super(service);
}
@JsonView(Views.Public.class)
@PostMapping("/install")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Workspace>> install(@Valid @RequestBody PluginWorkspaceDTO plugin) {
@ -35,6 +39,7 @@ public class PluginControllerCE extends BaseController<PluginService, Plugin, St
.map(workspace -> new ResponseDTO<>(HttpStatus.CREATED.value(), workspace, null));
}
@JsonView(Views.Public.class)
@PostMapping("/uninstall")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Workspace>> uninstall(@Valid @RequestBody PluginWorkspaceDTO plugin) {
@ -42,12 +47,14 @@ public class PluginControllerCE extends BaseController<PluginService, Plugin, St
.map(workspace -> new ResponseDTO<>(HttpStatus.CREATED.value(), workspace, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{pluginId}/form")
public Mono<ResponseDTO<Object>> getDatasourceForm(@PathVariable String pluginId) {
return service.getFormConfig(pluginId)
.map(form -> new ResponseDTO<>(HttpStatus.OK.value(), form, null));
}
@JsonView(Views.Public.class)
@GetMapping("/default/icons")
public Mono<ResponseDTO<List<Plugin>>> getDefaultPluginIcons() {
return service.getDefaultPluginIcons()

View File

@ -1,9 +1,12 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.Provider;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ProviderService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
@ -20,6 +23,7 @@ public class ProviderControllerCE extends BaseController<ProviderService, Provid
super(service);
}
@JsonView(Views.Public.class)
@GetMapping("/categories")
public Mono<ResponseDTO<List<String>>> getAllCategories() {
return service.getAllCategories()

View File

@ -1,6 +1,7 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.TemplateCollection;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.RestApiImporterType;
@ -9,6 +10,8 @@ import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.ApiImporter;
import com.appsmith.server.services.CurlImporterService;
import com.appsmith.server.services.PostmanImporterService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.DeleteMapping;
@ -38,6 +41,7 @@ public class RestApiImportControllerCE {
this.postmanImporterService = postmanImporterService;
}
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<ActionDTO>> create(@RequestBody(required = false) Object input,
@ -63,6 +67,7 @@ public class RestApiImportControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PostMapping("/postman")
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<TemplateCollection>> importPostmanCollection(@RequestBody Object input,
@ -71,12 +76,14 @@ public class RestApiImportControllerCE {
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@GetMapping("/templateCollections")
public Mono<ResponseDTO<List<TemplateCollection>>> fetchImportedCollections() {
return Mono.just(postmanImporterService.fetchPostmanCollections())
.map(resources -> new ResponseDTO<>(HttpStatus.OK.value(), resources, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/templateCollections/{id}")
public Mono<ResponseDTO<TemplateCollection>> deletePostmanCollection(@PathVariable String id) {
return Mono.just(postmanImporterService.deletePostmanCollection(id))

View File

@ -1,10 +1,13 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.models.Datasource;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.solutions.AuthenticationService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -28,6 +31,7 @@ public class SaasControllerCE {
this.authenticationService = authenticationService;
}
@JsonView(Views.Public.class)
@PostMapping("/{datasourceId}/pages/{pageId}/oauth")
public Mono<ResponseDTO<String>> getAppsmithToken(@PathVariable String datasourceId,
@PathVariable String pageId,
@ -40,6 +44,7 @@ public class SaasControllerCE {
.map(token -> new ResponseDTO<>(HttpStatus.OK.value(), token, null));
}
@JsonView(Views.Public.class)
@PostMapping("/{datasourceId}/token")
public Mono<ResponseDTO<OAuthResponseDTO>> getAccessToken(@PathVariable String datasourceId, @RequestParam String appsmithToken, ServerWebExchange serverWebExchange) {

View File

@ -1,10 +1,13 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Tenant;
import com.appsmith.server.domains.TenantConfiguration;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.services.TenantService;
import com.fasterxml.jackson.annotation.JsonView;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
@ -30,6 +33,7 @@ public class TenantControllerCE {
*
* @return
*/
@JsonView(Views.Public.class)
@GetMapping("/current")
public Mono<ResponseDTO<Tenant>> getTenantConfig() {
return service.getTenantConfiguration()

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.FieldName;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.ApplicationMode;
@ -8,6 +9,8 @@ import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.exceptions.AppsmithError;
import com.appsmith.server.exceptions.AppsmithException;
import com.appsmith.server.services.ThemeService;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.http.HttpStatus;
import org.springframework.web.bind.annotation.GetMapping;
@ -36,6 +39,7 @@ public class ThemeControllerCE extends BaseController<ThemeService, Theme, Strin
throw new AppsmithException(AppsmithError.UNSUPPORTED_OPERATION);
}
@JsonView(Views.Public.class)
@GetMapping("applications/{applicationId}")
public Mono<ResponseDTO<List<Theme>>> getApplicationThemes(@PathVariable String applicationId,
@RequestHeader(name = FieldName.BRANCH_NAME, required = false) String branchName) {
@ -43,6 +47,7 @@ public class ThemeControllerCE extends BaseController<ThemeService, Theme, Strin
.map(themes -> new ResponseDTO<>(HttpStatus.OK.value(), themes, null));
}
@JsonView(Views.Public.class)
@GetMapping("applications/{applicationId}/current")
public Mono<ResponseDTO<Theme>> getCurrentTheme(@PathVariable String applicationId,
@RequestParam(required = false, defaultValue = "EDIT") ApplicationMode mode,
@ -51,6 +56,7 @@ public class ThemeControllerCE extends BaseController<ThemeService, Theme, Strin
.map(theme -> new ResponseDTO<>(HttpStatus.OK.value(), theme, null));
}
@JsonView(Views.Public.class)
@PutMapping("applications/{applicationId}")
public Mono<ResponseDTO<Theme>> updateTheme(@PathVariable String applicationId,
@Valid @RequestBody Theme resource,
@ -59,6 +65,7 @@ public class ThemeControllerCE extends BaseController<ThemeService, Theme, Strin
.map(theme -> new ResponseDTO<>(HttpStatus.OK.value(), theme, null));
}
@JsonView(Views.Public.class)
@PatchMapping("applications/{applicationId}")
public Mono<ResponseDTO<Theme>> publishCurrentTheme(@PathVariable String applicationId,
@RequestBody Theme resource,
@ -67,6 +74,7 @@ public class ThemeControllerCE extends BaseController<ThemeService, Theme, Strin
.map(theme -> new ResponseDTO<>(HttpStatus.OK.value(), theme, null));
}
@JsonView(Views.Public.class)
@PatchMapping("{themeId}")
public Mono<ResponseDTO<Theme>> updateName(@PathVariable String themeId, @Valid @RequestBody Theme resource) {
return service.updateName(themeId, resource)

View File

@ -1,9 +1,12 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.dtos.UsagePulseDTO;
import com.appsmith.server.services.UsagePulseService;
import com.fasterxml.jackson.annotation.JsonView;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import org.springframework.http.HttpStatus;
@ -19,6 +22,7 @@ public class UsagePulseControllerCE {
private final UsagePulseService service;
@JsonView(Views.Public.class)
@PostMapping
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<Boolean>> create(@RequestBody @Valid UsagePulseDTO usagePulseDTO) {

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.User;
import com.appsmith.server.domains.UserData;
@ -16,6 +17,8 @@ import com.appsmith.server.services.UserWorkspaceService;
import com.appsmith.server.solutions.UserAndAccessManagementService;
import com.appsmith.server.solutions.UserSignup;
import jakarta.validation.Valid;
import com.fasterxml.jackson.annotation.JsonView;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -64,6 +67,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
this.userAndAccessManagementService = userAndAccessManagementService;
}
@JsonView(Views.Public.class)
@PostMapping(consumes = {MediaType.APPLICATION_JSON_VALUE})
@ResponseStatus(HttpStatus.CREATED)
public Mono<ResponseDTO<User>> create(@Valid @RequestBody User resource,
@ -73,12 +77,14 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PostMapping(consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE})
@ResponseStatus(HttpStatus.CREATED)
public Mono<Void> createFormEncoded(ServerWebExchange exchange) {
return userSignup.signupAndLoginFromFormData(exchange);
}
@JsonView(Views.Public.class)
@PostMapping(value = "/super", consumes = {MediaType.APPLICATION_JSON_VALUE})
public Mono<ResponseDTO<User>> createSuperUser(
@Valid @RequestBody UserSignupRequestDTO resource,
@ -88,17 +94,20 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.map(created -> new ResponseDTO<>(HttpStatus.CREATED.value(), created, null));
}
@JsonView(Views.Public.class)
@PostMapping(value = "/super", consumes = {MediaType.APPLICATION_FORM_URLENCODED_VALUE})
public Mono<Void> createSuperUserFromFormData(ServerWebExchange exchange) {
return userSignup.signupAndLoginSuperFromFormData(exchange);
}
@JsonView(Views.Public.class)
@PutMapping()
public Mono<ResponseDTO<User>> update(@RequestBody UserUpdateDTO updates, ServerWebExchange exchange) {
return service.updateCurrentUser(updates, exchange)
.map(updatedUser -> new ResponseDTO<>(HttpStatus.OK.value(), updatedUser, null));
}
@JsonView(Views.Public.class)
@PutMapping("/leaveWorkspace/{workspaceId}")
public Mono<ResponseDTO<User>> leaveWorkspace(@PathVariable String workspaceId) {
return userWorkspaceService.leaveWorkspace(workspaceId)
@ -113,6 +122,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
* @param originHeader The Origin header in the request. This is a mandatory parameter.
* @return
*/
@JsonView(Views.Public.class)
@PostMapping("/forgotPassword")
public Mono<ResponseDTO<Boolean>> forgotPasswordRequest(@RequestBody ResetUserPasswordDTO userPasswordDTO,
@RequestHeader("Origin") String originHeader) {
@ -125,18 +135,21 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.thenReturn(new ResponseDTO<>(HttpStatus.OK.value(), true, null));
}
@JsonView(Views.Public.class)
@GetMapping("/verifyPasswordResetToken")
public Mono<ResponseDTO<Boolean>> verifyPasswordResetToken(@RequestParam String token) {
return service.verifyPasswordResetToken(token)
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@PutMapping("/resetPassword")
public Mono<ResponseDTO<Boolean>> resetPasswordAfterForgotPassword(@RequestBody ResetUserPasswordDTO userPasswordDTO) {
return service.resetPasswordAfterForgotPassword(userPasswordDTO.getToken(), userPasswordDTO)
.map(result -> new ResponseDTO<>(HttpStatus.OK.value(), result, null));
}
@JsonView(Views.Public.class)
@GetMapping("/me")
public Mono<ResponseDTO<UserProfileDTO>> getUserProfile() {
return sessionUserService.getCurrentUser()
@ -152,6 +165,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
* @param originHeader Origin header in the request
* @return List of new users who have been created/existing users who have been added to the workspace.
*/
@JsonView(Views.Public.class)
@PostMapping("/invite")
public Mono<ResponseDTO<List<User>>> inviteUsers(@RequestBody InviteUsersDTO inviteUsersDTO,
@RequestHeader("Origin") String originHeader) {
@ -159,6 +173,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.map(users -> new ResponseDTO<>(HttpStatus.OK.value(), users, null));
}
@JsonView(Views.Public.class)
@PutMapping("/setReleaseNotesViewed")
public Mono<ResponseDTO<Void>> setReleaseNotesViewed() {
return sessionUserService.getCurrentUser()
@ -166,6 +181,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.thenReturn(new ResponseDTO<>(HttpStatus.OK.value(), null, null));
}
@JsonView(Views.Public.class)
@PostMapping(value = "/photo", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
public Mono<ResponseDTO<UserData>> uploadProfilePhoto(@RequestPart("file") Mono<Part> fileMono) {
return fileMono
@ -173,6 +189,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.map(url -> new ResponseDTO<>(HttpStatus.OK.value(), url, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/photo")
public Mono<ResponseDTO<Void>> deleteProfilePhoto() {
return userDataService
@ -180,6 +197,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
.map(ignored -> new ResponseDTO<>(HttpStatus.OK.value(), null, null));
}
@JsonView(Views.Public.class)
@GetMapping("/photo")
public Mono<Void> getProfilePhoto(ServerWebExchange exchange) {
return userDataService.makeProfilePhotoResponse(exchange)
@ -188,6 +206,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
}));
}
@JsonView(Views.Public.class)
@GetMapping("/photo/{email}")
public Mono<Void> getProfilePhoto(ServerWebExchange exchange, @PathVariable String email) {
return userDataService.makeProfilePhotoResponse(exchange, email)
@ -196,6 +215,7 @@ public class UserControllerCE extends BaseController<UserService, User, String>
}));
}
@JsonView(Views.Public.class)
@GetMapping("/features")
public Mono<ResponseDTO<Map<String, Boolean>>> getFeatureFlags() {
return userDataService.getFeatureFlagsForCurrentUser()

View File

@ -1,5 +1,6 @@
package com.appsmith.server.controllers.ce;
import com.appsmith.external.views.Views;
import com.appsmith.server.constants.Url;
import com.appsmith.server.domains.Workspace;
import com.appsmith.server.dtos.UpdatePermissionGroupDTO;
@ -7,6 +8,7 @@ import com.appsmith.server.dtos.ResponseDTO;
import com.appsmith.server.dtos.WorkspaceMemberInfoDTO;
import com.appsmith.server.dtos.PermissionGroupInfoDTO;
import com.appsmith.server.services.WorkspaceService;
import com.fasterxml.jackson.annotation.JsonView;
import com.appsmith.server.services.UserWorkspaceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
@ -40,18 +42,21 @@ public class WorkspaceControllerCE extends BaseController<WorkspaceService, Work
*
* @return
*/
@JsonView(Views.Public.class)
@GetMapping("/{workspaceId}/permissionGroups")
public Mono<ResponseDTO<List<PermissionGroupInfoDTO>>> getPermissionGroupsForWorkspace(@PathVariable String workspaceId) {
return service.getPermissionGroupsForWorkspace(workspaceId)
.map(groupInfoList -> new ResponseDTO<>(HttpStatus.OK.value(), groupInfoList, null));
}
@JsonView(Views.Public.class)
@GetMapping("/{workspaceId}/members")
public Mono<ResponseDTO<List<WorkspaceMemberInfoDTO>>> getUserMembersOfWorkspace(@PathVariable String workspaceId) {
return userWorkspaceService.getWorkspaceMembers(workspaceId)
.map(users -> new ResponseDTO<>(HttpStatus.OK.value(), users, null));
}
@JsonView(Views.Public.class)
@PutMapping("/{workspaceId}/permissionGroup")
public Mono<ResponseDTO<WorkspaceMemberInfoDTO>> updatePermissionGroupForMember(@RequestBody UpdatePermissionGroupDTO updatePermissionGroupDTO,
@PathVariable String workspaceId,
@ -60,6 +65,7 @@ public class WorkspaceControllerCE extends BaseController<WorkspaceService, Work
.map(user -> new ResponseDTO<>(HttpStatus.OK.value(), user, null));
}
@JsonView(Views.Public.class)
@PostMapping("/{workspaceId}/logo")
public Mono<ResponseDTO<Workspace>> uploadLogo(@PathVariable String workspaceId,
@RequestPart("file") Mono<Part> fileMono) {
@ -68,6 +74,7 @@ public class WorkspaceControllerCE extends BaseController<WorkspaceService, Work
.map(url -> new ResponseDTO<>(HttpStatus.OK.value(), url, null));
}
@JsonView(Views.Public.class)
@DeleteMapping("/{workspaceId}/logo")
public Mono<ResponseDTO<Workspace>> deleteLogo(@PathVariable String workspaceId) {
return service.deleteLogo(workspaceId)