Martin Betak has uploaded a new change for review. Change subject: tools: Validate TimeZone values in engine-config ......................................................................
tools: Validate TimeZone values in engine-config Added validation for DefaultWindowsTimeZone and DefaultGeneralTimeZone keys. Change-Id: I78c056128f1fcd607e9baa882e24544c99ad7cd2 Signed-off-by: Martin Betak <mbe...@redhat.com> --- A backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/BaseTimeZoneValueHelper.java A backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/GeneralTimeZoneValueHelper.java A backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/WindowsTimeZoneValueHelper.java M packaging/etc/engine-config/engine-config.properties 4 files changed, 73 insertions(+), 2 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/01/20501/1 diff --git a/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/BaseTimeZoneValueHelper.java b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/BaseTimeZoneValueHelper.java new file mode 100644 index 0000000..4b34c9a --- /dev/null +++ b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/BaseTimeZoneValueHelper.java @@ -0,0 +1,41 @@ +package org.ovirt.engine.core.config.entity.helper; + +import org.ovirt.engine.core.common.TimeZoneType; +import org.ovirt.engine.core.config.EngineConfigCLIParser; +import org.ovirt.engine.core.config.entity.ConfigKey; + +public abstract class BaseTimeZoneValueHelper extends BaseValueHelper { + + @Override + public String getValue(String value) throws Exception { + return value; + } + + @Override + public String setValue(String value) throws Exception { + return value; + } + + @Override + public ValidationResult validate(ConfigKey key, String value) { + if (getTimeZoneType().getTimeZoneList().containsKey(value)) { + return new ValidationResult(true); + } + + return new ValidationResult(false, value + " is not a valid " + getHelpNoteType()); + } + + @Override + public void setParser(EngineConfigCLIParser parser) { + // NOP + } + + @Override + public String getHelpNote(ConfigKey key) { + return getHelpNoteByType(key, getHelpNoteType()); + } + + public abstract TimeZoneType getTimeZoneType(); + + public abstract String getHelpNoteType(); +} diff --git a/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/GeneralTimeZoneValueHelper.java b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/GeneralTimeZoneValueHelper.java new file mode 100644 index 0000000..1090978 --- /dev/null +++ b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/GeneralTimeZoneValueHelper.java @@ -0,0 +1,15 @@ +package org.ovirt.engine.core.config.entity.helper; + +import org.ovirt.engine.core.common.TimeZoneType; + +public class GeneralTimeZoneValueHelper extends BaseTimeZoneValueHelper { + @Override + public TimeZoneType getTimeZoneType() { + return TimeZoneType.GENERAL_TIMEZONE; + } + + @Override + public String getHelpNoteType() { + return "time zone"; + } +} diff --git a/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/WindowsTimeZoneValueHelper.java b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/WindowsTimeZoneValueHelper.java new file mode 100644 index 0000000..0f92d56 --- /dev/null +++ b/backend/manager/tools/src/main/java/org/ovirt/engine/core/config/entity/helper/WindowsTimeZoneValueHelper.java @@ -0,0 +1,15 @@ +package org.ovirt.engine.core.config.entity.helper; + +import org.ovirt.engine.core.common.TimeZoneType; + +public class WindowsTimeZoneValueHelper extends BaseTimeZoneValueHelper { + @Override + public TimeZoneType getTimeZoneType() { + return TimeZoneType.WINDOWS_TIMEZONE; + } + + @Override + public String getHelpNoteType() { + return "time zone for Windows OS"; + } +} diff --git a/packaging/etc/engine-config/engine-config.properties b/packaging/etc/engine-config/engine-config.properties index c5e1792..a188725 100644 --- a/packaging/etc/engine-config/engine-config.properties +++ b/packaging/etc/engine-config/engine-config.properties @@ -288,9 +288,9 @@ KeystoneAuthUrl.description="OpenStack Keystone URL (e.g. http://keystone-server:35357)" KeystoneAuthUrl.type=String DefaultWindowsTimeZone.description="Default time zone to be used when creating new Windows VMs" -DefaultWindowsTimeZone.type=String +DefaultWindowsTimeZone.type=WindowsTimeZone DefaultGeneralTimeZone.description="Default time zone to be used when creating Linux and Other-OS VMs" -DefaultGeneralTimeZone.type=String +DefaultGeneralTimeZone.type=GeneralTimeZone OnlyRequiredNetworksMandatoryForVdsSelection.description="If set to 'true', only networks marked as 'required' will be considered when determining if a host can run a VM. Otherwise, all the networks the VM utilizes have to be set-up on a host for it to be able to run the VM" OnlyRequiredNetworksMandatoryForVdsSelection.validValues=true,false MaxAverageNetworkQoSValue.description="Maximum value for Average Networks QoS (Mbps)" -- To view, visit http://gerrit.ovirt.org/20501 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I78c056128f1fcd607e9baa882e24544c99ad7cd2 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Betak <mbe...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches