chore: Remove Optional in method arguments (#33602)

Minor refactor to reduce usage of `Optional` in method arguments, which
is not recommended.
This commit is contained in:
Shrikant Sharat Kandula 2024-06-04 13:43:34 +05:30 committed by GitHub
parent b11eba7b52
commit 3457d1ed79
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 13 additions and 18 deletions

View File

@ -26,7 +26,7 @@ public interface AppsmithRepository<T extends BaseDomain> {
Mono<T> setUserPermissionsInObject(T obj);
Mono<T> updateAndReturn(String id, BridgeUpdate updateObj, Optional<AclPermission> permission);
Mono<T> updateAndReturn(String id, BridgeUpdate updateObj, AclPermission permission);
/**
* This method uses the mongodb bulk operation to save a list of new actions. When calling this method, please note

View File

@ -171,16 +171,15 @@ public abstract class BaseAppsmithRepositoryCEImpl<T extends BaseDomain> {
return builder.permission(permission).updateFirst(update);
}
protected Mono<Set<String>> getCurrentUserPermissionGroupsIfRequired(Optional<AclPermission> permission) {
protected Mono<Set<String>> getCurrentUserPermissionGroupsIfRequired(AclPermission permission) {
return getCurrentUserPermissionGroupsIfRequired(permission, true);
}
protected Mono<Set<String>> getCurrentUserPermissionGroupsIfRequired(
Optional<AclPermission> permission, boolean includeAnonymousUserPermissions) {
if (permission.isEmpty()) {
return Mono.just(Set.of());
}
return getCurrentUserPermissionGroups(includeAnonymousUserPermissions);
AclPermission permission, boolean includeAnonymousUserPermissions) {
return permission == null
? Mono.just(Set.of())
: getCurrentUserPermissionGroups(includeAnonymousUserPermissions);
}
public Mono<Set<String>> getCurrentUserPermissionGroups() {
@ -357,7 +356,7 @@ public abstract class BaseAppsmithRepositoryCEImpl<T extends BaseDomain> {
}
return getCurrentUserPermissionGroupsIfRequired(
Optional.ofNullable(params.getPermission()), params.isIncludeAnonymousUserPermissions())
params.getPermission(), params.isIncludeAnonymousUserPermissions())
.defaultIfEmpty(Collections.emptySet())
.map(params::permissionGroups)
.then();
@ -460,18 +459,18 @@ public abstract class BaseAppsmithRepositoryCEImpl<T extends BaseDomain> {
*
* @see FindAndModifyOptions
*/
public Mono<T> updateAndReturn(String id, BridgeUpdate updateObj, Optional<AclPermission> permission) {
public Mono<T> updateAndReturn(String id, BridgeUpdate updateObj, AclPermission permission) {
Query query = new Query(Criteria.where("id").is(id));
FindAndModifyOptions findAndModifyOptions =
FindAndModifyOptions.options().returnNew(Boolean.TRUE);
if (permission.isEmpty()) {
if (permission == null) {
return mongoOperations.findAndModify(query, updateObj, findAndModifyOptions, this.genericDomain);
}
return getCurrentUserPermissionGroupsIfRequired(permission, true).flatMap(permissionGroups -> {
query.addCriteria(new Criteria().andOperator(notDeleted(), userAcl(permissionGroups, permission.get())));
query.addCriteria(new Criteria().andOperator(notDeleted(), userAcl(permissionGroups, permission)));
return mongoOperations.findAndModify(query, updateObj, findAndModifyOptions, this.genericDomain);
});
}

View File

@ -346,8 +346,7 @@ public class CustomNewActionRepositoryCEImpl extends BaseAppsmithRepositoryImpl<
protected Mono<Void> copyUnpublishedActionToPublishedAction(
BridgeQuery<NewAction> criteria, AclPermission permission) {
Mono<Set<String>> permissionGroupsMono =
getCurrentUserPermissionGroupsIfRequired(Optional.ofNullable(permission));
Mono<Set<String>> permissionGroupsMono = getCurrentUserPermissionGroupsIfRequired(permission);
return permissionGroupsMono
.flatMapMany(permissionGroups -> {

View File

@ -218,8 +218,7 @@ public class CustomNewPageRepositoryCEImpl extends BaseAppsmithRepositoryImpl<Ne
public Mono<Void> publishPages(Collection<String> pageIds, AclPermission permission) {
Criteria applicationIdCriteria = where(NewPage.Fields.id).in(pageIds);
Mono<Set<String>> permissionGroupsMono =
getCurrentUserPermissionGroupsIfRequired(Optional.ofNullable(permission));
Mono<Set<String>> permissionGroupsMono = getCurrentUserPermissionGroupsIfRequired(permission);
return permissionGroupsMono.flatMap(permissionGroups -> {
return Mono.fromCallable(() -> {

View File

@ -35,7 +35,6 @@ import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.UUID;
import static com.appsmith.external.enums.FeatureFlagEnum.TENANT_TEST_FEATURE;
@ -90,8 +89,7 @@ class TenantServiceCETest {
originalTenantConfiguration = tenant.getTenantConfiguration();
tenantRepository
.updateAndReturn(
tenant.getId(), Bridge.update().set(Tenant.Fields.tenantConfiguration, null), Optional.empty())
.updateAndReturn(tenant.getId(), Bridge.update().set(Tenant.Fields.tenantConfiguration, null), null)
.block();
// Make api_user super-user to test tenant admin functionality