diff --git a/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/CreateImageTransferCmd.java b/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/CreateImageTransferCmd.java
index 8948d1a0d5f..eeb63b985d5 100644
--- a/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/CreateImageTransferCmd.java
+++ b/api/src/main/java/org/apache/cloudstack/api/command/admin/backup/CreateImageTransferCmd.java
@@ -81,7 +81,7 @@ public class CreateImageTransferCmd extends BaseCmd implements AdminCmd {
}
public ImageTransfer.Format getFormat() {
- return EnumUtils.fromString(ImageTransfer.Format.class, format);
+ return EnumUtils.getEnum(ImageTransfer.Format.class, format);
}
@Override
diff --git a/plugins/integrations/veeam-control-service/pom.xml b/plugins/integrations/veeam-control-service/pom.xml
index cc0349b75d6..4b1b1f4501a 100644
--- a/plugins/integrations/veeam-control-service/pom.xml
+++ b/plugins/integrations/veeam-control-service/pom.xml
@@ -24,7 +24,7 @@
org.apache.cloudstack
cloudstack-plugins
- 4.22.1.0-SNAPSHOT
+ 4.23.0.0-SNAPSHOT
../../pom.xml
diff --git a/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/adapter/ServerAdapter.java b/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/adapter/ServerAdapter.java
index 48332b702d1..3990b1e129a 100644
--- a/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/adapter/ServerAdapter.java
+++ b/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/adapter/ServerAdapter.java
@@ -1447,11 +1447,11 @@ public class ServerAdapter extends ManagerBase {
}
accountService.checkAccess(CallContext.current().getCallingAccount(), null, false,
volumeVO);
- Direction direction = EnumUtils.fromString(Direction.class, request.getDirection());
+ Direction direction = EnumUtils.getEnum(Direction.class, request.getDirection());
if (direction == null) {
throw new InvalidParameterValueException("Invalid or missing direction");
}
- Format format = EnumUtils.fromString(Format.class, request.getFormat());
+ Format format = EnumUtils.getEnum(Format.class, request.getFormat());
Long backupId = null;
if (request.getBackup() != null && StringUtils.isNotBlank(request.getBackup().getId())) {
BackupVO backupVO = backupDao.findByUuid(request.getBackup().getId());
diff --git a/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/api/dto/Vm.java b/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/api/dto/Vm.java
index 9607e794998..1d557d186f0 100644
--- a/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/api/dto/Vm.java
+++ b/plugins/integrations/veeam-control-service/src/main/java/org/apache/cloudstack/veeam/api/dto/Vm.java
@@ -348,7 +348,7 @@ public final class Vm extends BaseDto {
@JsonIgnore
public int getTypeOrdinal() {
- Type enumType = EnumUtils.fromString(Type.class, type, Type.q35_sea_bios);
+ Type enumType = EnumUtils.getEnum(Type.class, type, Type.q35_sea_bios);
return enumType.ordinal();
}
diff --git a/plugins/network-elements/juniper-contrail/src/test/java/org/apache/cloudstack/network/contrail/management/MockAccountManager.java b/plugins/network-elements/juniper-contrail/src/test/java/org/apache/cloudstack/network/contrail/management/MockAccountManager.java
index ab7662f4430..4ec96636235 100644
--- a/plugins/network-elements/juniper-contrail/src/test/java/org/apache/cloudstack/network/contrail/management/MockAccountManager.java
+++ b/plugins/network-elements/juniper-contrail/src/test/java/org/apache/cloudstack/network/contrail/management/MockAccountManager.java
@@ -597,6 +597,10 @@ public class MockAccountManager extends ManagerBase implements AccountManager {
public void checkApiAccess(Account account, String command, String apiKey) throws PermissionDeniedException {
}
+ @Override
+ public void checkApiAccess(Account caller, String command) throws PermissionDeniedException {
+ }
+
@Override
public UserAccount clearUserTwoFactorAuthenticationInSetupStateOnLogin(UserAccount user) {
return null;
diff --git a/server/src/main/java/com/cloud/user/AccountManager.java b/server/src/main/java/com/cloud/user/AccountManager.java
index 98d2419e048..eca1a571dd8 100644
--- a/server/src/main/java/com/cloud/user/AccountManager.java
+++ b/server/src/main/java/com/cloud/user/AccountManager.java
@@ -204,6 +204,8 @@ public interface AccountManager extends AccountService, Configurable {
void checkApiAccess(Account caller, String command, String apiKey);
+ void checkApiAccess(Account caller, String command);
+
UserAccount clearUserTwoFactorAuthenticationInSetupStateOnLogin(UserAccount user);
void verifyCallerPrivilegeForUserOrAccountOperations(Account userAccount);
diff --git a/server/src/main/java/com/cloud/user/AccountManagerImpl.java b/server/src/main/java/com/cloud/user/AccountManagerImpl.java
index c9f4feea8e9..9c7c8141f8e 100644
--- a/server/src/main/java/com/cloud/user/AccountManagerImpl.java
+++ b/server/src/main/java/com/cloud/user/AccountManagerImpl.java
@@ -1535,6 +1535,12 @@ public class AccountManagerImpl extends ManagerBase implements AccountManager, M
checkApiAccess(apiCheckers, caller, command, keyPairPermissions.toArray(new ApiKeyPairPermission[0]));
}
+ @Override
+ public void checkApiAccess(Account caller, String command) {
+ List apiCheckers = getEnabledApiCheckers();
+ checkApiAccess(apiCheckers, caller, command);
+ }
+
@NotNull
private List getEnabledApiCheckers() {
// we are really only interested in the dynamic access checker