diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCE.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCE.java index 8923668aa6e8..f32838704608 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCE.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCE.java @@ -6,9 +6,15 @@ import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; +import java.util.List; + public interface CustomDatasourceRepositoryCE extends AppsmithRepository { Flux findAllByWorkspaceId(String workspaceId, AclPermission permission); Mono findByNameAndWorkspaceId(String name, String workspaceId, AclPermission aclPermission); + + Flux findByIdIn(List ids); + + Mono countByDeletedAtNull(); } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCEImpl.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCEImpl.java index eb982061b1e0..af2dce8aaa81 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCEImpl.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/CustomDatasourceRepositoryCEImpl.java @@ -3,11 +3,14 @@ import com.appsmith.external.models.Datasource; import com.appsmith.server.acl.AclPermission; import com.appsmith.server.helpers.ce.bridge.Bridge; +import com.appsmith.server.helpers.ce.bridge.BridgeQuery; import com.appsmith.server.repositories.BaseAppsmithRepositoryImpl; import org.springframework.data.domain.Sort; import reactor.core.publisher.Flux; import reactor.core.publisher.Mono; +import java.util.List; + public class CustomDatasourceRepositoryCEImpl extends BaseAppsmithRepositoryImpl implements CustomDatasourceRepositoryCE { @@ -28,4 +31,16 @@ public Mono findByNameAndWorkspaceId(String name, String workspaceId .permission(aclPermission) .one(); } + + @Override + public Flux findByIdIn(List ids) { + final BridgeQuery q = Bridge.in(Datasource.Fields.id, ids); + return queryBuilder().criteria(q).all(); + } + + @Override + public Mono countByDeletedAtNull() { + final BridgeQuery q = Bridge.isNull(Datasource.Fields.deletedAt); + return queryBuilder().criteria(q).count(); + } } diff --git a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/DatasourceRepositoryCE.java b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/DatasourceRepositoryCE.java index 087b92cff5b5..71967e72cb65 100644 --- a/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/DatasourceRepositoryCE.java +++ b/app/server/appsmith-server/src/main/java/com/appsmith/server/repositories/ce/DatasourceRepositoryCE.java @@ -4,19 +4,12 @@ import com.appsmith.server.projections.IdPoliciesOnly; import com.appsmith.server.repositories.BaseRepository; import com.appsmith.server.repositories.CustomDatasourceRepository; +import org.springframework.stereotype.Repository; import reactor.core.publisher.Flux; -import reactor.core.publisher.Mono; -import java.util.List; import java.util.Set; +@Repository public interface DatasourceRepositoryCE extends BaseRepository, CustomDatasourceRepository { - - Flux findByIdIn(List ids); - - Flux findAllByWorkspaceId(String workspaceId); - - Mono countByDeletedAtNull(); - Flux findIdsAndPolicyMapByIdIn(Set datasourceIds); }