Merge branch 'feat/delete-datasources-api' into 'release'
Add delete service operation for datasources. See merge request theappsmith/internal-tools-server!305
This commit is contained in:
commit
d0e47ea2ea
|
|
@ -3,6 +3,7 @@ package com.appsmith.server.services;
|
|||
import com.appsmith.external.models.DatasourceConfiguration;
|
||||
import com.appsmith.external.models.DatasourceTestResult;
|
||||
import com.appsmith.external.plugins.PluginExecutor;
|
||||
import com.appsmith.server.constants.AnalyticsEvents;
|
||||
import com.appsmith.server.constants.FieldName;
|
||||
import com.appsmith.server.domains.Datasource;
|
||||
import com.appsmith.server.domains.Organization;
|
||||
|
|
@ -49,7 +50,7 @@ public class DatasourceServiceImpl extends BaseService<DatasourceRepository, Dat
|
|||
ReactiveMongoTemplate reactiveMongoTemplate,
|
||||
DatasourceRepository repository,
|
||||
OrganizationService organizationService,
|
||||
AnalyticsService analyticsService,
|
||||
AnalyticsService<Datasource> analyticsService,
|
||||
SessionUserService sessionUserService,
|
||||
ObjectMapper objectMapper,
|
||||
PluginService pluginService,
|
||||
|
|
@ -210,4 +211,18 @@ public class DatasourceServiceImpl extends BaseService<DatasourceRepository, Dat
|
|||
.switchIfEmpty(Mono.error(new AppsmithException(AppsmithError.NO_RESOURCE_FOUND, FieldName.DATASOURCE, id)));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Mono<Datasource> delete(String id) {
|
||||
Mono<Datasource> datasourceMono = repository.findById(id)
|
||||
.switchIfEmpty(Mono.error(new AppsmithException(AppsmithError.NO_RESOURCE_FOUND, "datasource", id)));
|
||||
return datasourceMono
|
||||
.flatMap(toDelete -> repository.archive(toDelete).thenReturn(toDelete))
|
||||
.flatMap(deletedObj ->
|
||||
analyticsService.sendEvent(
|
||||
AnalyticsEvents.DELETE + "_" + deletedObj.getClass().getSimpleName().toUpperCase(),
|
||||
deletedObj
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -85,6 +85,7 @@ authenticated_operations = [
|
|||
{"method": "GET", "resource": "datasources", "permission": "read:datasources"},
|
||||
{"method": "POST", "resource": "datasources", "permission": "create:datasources"},
|
||||
{"method": "PUT", "resource": "datasources", "permission": "update:datasources"},
|
||||
{"method": "DELETE", "resource": "datasources", "permission": "delete:datasources"},
|
||||
|
||||
{"method": "GET", "resource": "configs", "permission": "read:configs"},
|
||||
{"method": "POST", "resource": "configs", "permission": "create:configs"},
|
||||
|
|
|
|||
Binary file not shown.
Loading…
Reference in New Issue
Block a user