From 7d7104cfffb727c56bf843d5d9ff6a8877f5412e Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Mon, 26 Sep 2022 17:30:52 +0200 Subject: [PATCH 1/4] Allow template names upto 255 chars --- .../src/main/java/com/cloud/template/TemplateManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java index c8b6cfdae400..7622f441d543 100755 --- a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java @@ -1747,7 +1747,7 @@ public VMTemplateVO createPrivateTemplateRecord(CreateTemplateCmd cmd, Account t _accountMgr.checkAccess(caller, null, true, templateOwner); String name = cmd.getTemplateName(); - if ((name == null) || (name.length() > 32)) { + if ((name == null) || (name.length() > 255)) { throw new InvalidParameterValueException("Template name cannot be null and should be less than 32 characters"); } From ca7e280d9c3a73929b76859dd5463f18cf2c32b6 Mon Sep 17 00:00:00 2001 From: dahn Date: Tue, 27 Sep 2022 09:03:32 +0200 Subject: [PATCH 2/4] Update error message --- .../src/main/java/com/cloud/template/TemplateManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java index 7622f441d543..343d5c587b99 100755 --- a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java @@ -1748,7 +1748,7 @@ public VMTemplateVO createPrivateTemplateRecord(CreateTemplateCmd cmd, Account t String name = cmd.getTemplateName(); if ((name == null) || (name.length() > 255)) { - throw new InvalidParameterValueException("Template name cannot be null and should be less than 32 characters"); + throw new InvalidParameterValueException("Template name cannot be null and should be less than 255 characters"); } if (cmd.getTemplateTag() != null) { From 121409111480ddaaeb88851913a3b9732394eb86 Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Thu, 29 Sep 2022 11:36:51 +0200 Subject: [PATCH 3/4] externalise name length in constant --- .../main/java/com/cloud/template/VirtualMachineTemplate.java | 2 ++ .../main/java/com/cloud/template/TemplateManagerImpl.java | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java b/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java index 95d1ebf0b87a..9098f919ca41 100644 --- a/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java +++ b/api/src/main/java/com/cloud/template/VirtualMachineTemplate.java @@ -30,6 +30,8 @@ import com.cloud.utils.fsm.StateObject; public interface VirtualMachineTemplate extends ControlledEntity, Identity, InternalIdentity, StateObject { + int MAXIMUM_TEMPLATE_NAME_LENGTH = 255; + enum State { Active, Inactive, diff --git a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java index 343d5c587b99..d3b8a4df5a8a 100755 --- a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java @@ -1747,8 +1747,9 @@ public VMTemplateVO createPrivateTemplateRecord(CreateTemplateCmd cmd, Account t _accountMgr.checkAccess(caller, null, true, templateOwner); String name = cmd.getTemplateName(); - if ((name == null) || (name.length() > 255)) { - throw new InvalidParameterValueException("Template name cannot be null and should be less than 255 characters"); + if ((org.apache.commons.lang3.StringUtils.isBlank(name) + || (name.length() > VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH)) { + throw new InvalidParameterValueException(String.format("Template name cannot be null and cannot be more %s characters", VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH)); } if (cmd.getTemplateTag() != null) { From 57e0317177c29376a6a518d34c2a0dbca363b2a6 Mon Sep 17 00:00:00 2001 From: Daan Hoogland Date: Thu, 29 Sep 2022 11:48:05 +0200 Subject: [PATCH 4/4] syntax --- .../src/main/java/com/cloud/template/TemplateManagerImpl.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java index d3b8a4df5a8a..232571015f38 100755 --- a/server/src/main/java/com/cloud/template/TemplateManagerImpl.java +++ b/server/src/main/java/com/cloud/template/TemplateManagerImpl.java @@ -1748,7 +1748,7 @@ public VMTemplateVO createPrivateTemplateRecord(CreateTemplateCmd cmd, Account t String name = cmd.getTemplateName(); if ((org.apache.commons.lang3.StringUtils.isBlank(name) - || (name.length() > VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH)) { + || (name.length() > VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH))) { throw new InvalidParameterValueException(String.format("Template name cannot be null and cannot be more %s characters", VirtualMachineTemplate.MAXIMUM_TEMPLATE_NAME_LENGTH)); }