git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube...
authorSweidan Omar <TFS\sweidan.omar>
Thu, 28 Apr 2022 06:39:52 +0000 (06:39 +0000)
committerSweidan Omar <TFS\sweidan.omar>
Thu, 28 Apr 2022 06:39:52 +0000 (06:39 +0000)
server/user.mediacube.gui/src/user/jobengine/zk/validator/ChangeValidator.java [deleted file]
server/user.mediacube.gui/src/user/jobengine/zk/validator/CronExpressionValidator.java [new file with mode: 0644]
server/user.mediacube.gui/src/user/jobengine/zk/validator/NameValidator.java [new file with mode: 0644]
server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterNameValidator.java [new file with mode: 0644]
server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterTypeValidator.java [new file with mode: 0644]
server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterValueValidator.java [new file with mode: 0644]
server/user.mediacube.gui/src/user/jobengine/zk/validator/TemplateNameValidator.java [new file with mode: 0644]

diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/ChangeValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/ChangeValidator.java
deleted file mode 100644 (file)
index 74ebd97..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-package user.jobengine.zk.validator;\r
-\r
-import org.zkoss.bind.ValidationContext;\r
-import org.zkoss.bind.validator.AbstractValidator;\r
-\r
-public class ChangeValidator extends AbstractValidator {\r
-\r
-       @Override\r
-       public void validate(ValidationContext context) {\r
-               // context.getBindContext().\r
-\r
-       }\r
-\r
-}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/CronExpressionValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/CronExpressionValidator.java
new file mode 100644 (file)
index 0000000..0aa0f5b
--- /dev/null
@@ -0,0 +1,51 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.quartz.CronExpression;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class CronExpressionValidator extends AbstractValidator {\r
+       private static final Logger logger = LogManager.getLogger();\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public CronExpressionValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedJob = (BasicDBObject) context.getProperty().getBase();\r
+               String newCronExpression = (String) context.getProperties("cronexpression")[0].getValue();\r
+\r
+               if (uneditedJob.getString("cronexpression") != null) {\r
+                       if (CronExpression.isValidExpression(newCronExpression)\r
+                                       && ifCronExpressionChanged(uneditedJob, newCronExpression)) {\r
+                               logger.info("{} is a valid CRON expression", newCronExpression);\r
+                               uneditedJob.put("cronexpression", newCronExpression);\r
+                               jobEditorModel2.setProcessDataChanged(true);\r
+                               jobEditorModel2.getSaveButton().setDisabled(false);\r
+                       } else {\r
+                               logger.info("{} is not a valid CRON expression", newCronExpression);\r
+                       }\r
+               } else {\r
+                       if (CronExpression.isValidExpression(newCronExpression)) {\r
+                               logger.info("{} is a valid CRON expression", newCronExpression);\r
+                               uneditedJob.put("cronexpression", newCronExpression);\r
+                               jobEditorModel2.setProcessDataChanged(true);\r
+                               jobEditorModel2.getSaveButton().setDisabled(false);\r
+                       } else {\r
+                               logger.info("{} is not a valid CRON expression", newCronExpression);\r
+                       }\r
+               }\r
+       }\r
+\r
+       private boolean ifCronExpressionChanged(BasicDBObject uneditedJob, String newCronExpression) {\r
+               return !uneditedJob.getString("cronexpression").equals(newCronExpression);\r
+       }\r
+}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/NameValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/NameValidator.java
new file mode 100644 (file)
index 0000000..d784f21
--- /dev/null
@@ -0,0 +1,41 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class NameValidator extends AbstractValidator {\r
+       private static final Logger logger = LogManager.getLogger();\r
+\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public NameValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedJob = (BasicDBObject) context.getProperty().getBase();\r
+               String originalJobName = uneditedJob.getString("name");\r
+               String originalTemplate = uneditedJob.getString("template");\r
+               jobEditorModel2.setOriginalTemplateName(originalTemplate);\r
+               String newName = (String) context.getProperties("name")[0].getValue();\r
+\r
+               if (originalJobName.equals(newName)) {\r
+                       logger.info("{} is not a new name", newName);\r
+               } else {\r
+                       logger.info("{} is a new name", newName);\r
+                       uneditedJob.put("name", newName);\r
+                       if (!jobEditorModel2.isChangedSinceLastSave()) {\r
+                               jobEditorModel2.setOriginalJobName(originalJobName);\r
+                       }\r
+                       jobEditorModel2.setProcessDataChanged(true);\r
+                       jobEditorModel2.getSaveButton().setDisabled(false);\r
+               }\r
+       }\r
+}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterNameValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterNameValidator.java
new file mode 100644 (file)
index 0000000..eeb07ae
--- /dev/null
@@ -0,0 +1,38 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class ParameterNameValidator extends AbstractValidator {\r
+       private static final Logger logger = LogManager.getLogger();\r
+\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public ParameterNameValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedParameter = (BasicDBObject) context.getProperty().getBase();\r
+               String newParameterName = (String) context.getProperties("name")[0].getValue();\r
+\r
+               if (uneditedParameter.getString("name").equals(newParameterName)) {\r
+                       logger.info("{} is not a new parameter name", newParameterName);\r
+                       jobEditorModel2.setProcessDataChanged(false);\r
+                       jobEditorModel2.getSaveButton().setDisabled(true);\r
+               } else {\r
+                       logger.info("{} is a new parameter name", newParameterName);\r
+                       uneditedParameter.put("name", newParameterName);\r
+                       jobEditorModel2.setProcessDataChanged(true);\r
+                       jobEditorModel2.setParameterNameChanged(true);\r
+                       jobEditorModel2.getSaveButton().setDisabled(false);\r
+               }\r
+       }\r
+}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterTypeValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterTypeValidator.java
new file mode 100644 (file)
index 0000000..50fee48
--- /dev/null
@@ -0,0 +1,38 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class ParameterTypeValidator extends AbstractValidator {\r
+       private static final Logger logger = LogManager.getLogger();\r
+\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public ParameterTypeValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedParameter = (BasicDBObject) context.getProperty().getBase();\r
+               String newParameterType = (String) context.getProperties("type")[0].getValue();\r
+\r
+               if (uneditedParameter.getString("type").equals(newParameterType)) {\r
+                       logger.info("{} is not a new parameter type", newParameterType);\r
+                       jobEditorModel2.setProcessDataChanged(false);\r
+                       jobEditorModel2.getSaveButton().setDisabled(true);\r
+               } else {\r
+                       logger.info("{} is a new parameter type", newParameterType);\r
+                       uneditedParameter.put("type", newParameterType);\r
+                       jobEditorModel2.setProcessDataChanged(true);\r
+                       jobEditorModel2.setParameterTypeChanged(true);\r
+                       jobEditorModel2.getSaveButton().setDisabled(false);\r
+               }\r
+       }\r
+}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterValueValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/ParameterValueValidator.java
new file mode 100644 (file)
index 0000000..711e561
--- /dev/null
@@ -0,0 +1,37 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class ParameterValueValidator extends AbstractValidator {\r
+       private static final Logger logger = LogManager.getLogger();\r
+\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public ParameterValueValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedParameter = (BasicDBObject) context.getProperty().getBase();\r
+               String newParameterValue = (String) context.getProperties("value")[0].getValue();\r
+\r
+               if (uneditedParameter.getString("value").equals(newParameterValue)) {\r
+                       logger.info("{} is not a new parameter value", newParameterValue);\r
+                       jobEditorModel2.setProcessDataChanged(false);\r
+                       jobEditorModel2.getSaveButton().setDisabled(true);\r
+               } else {\r
+                       logger.info("{} is a new parameter value", newParameterValue);\r
+                       uneditedParameter.put("value", newParameterValue);\r
+                       jobEditorModel2.setProcessDataChanged(true);\r
+                       jobEditorModel2.getSaveButton().setDisabled(false);\r
+               }\r
+       }\r
+}\r
diff --git a/server/user.mediacube.gui/src/user/jobengine/zk/validator/TemplateNameValidator.java b/server/user.mediacube.gui/src/user/jobengine/zk/validator/TemplateNameValidator.java
new file mode 100644 (file)
index 0000000..52afad6
--- /dev/null
@@ -0,0 +1,44 @@
+package user.jobengine.zk.validator;\r
+\r
+import org.apache.commons.io.FilenameUtils;\r
+import org.apache.logging.log4j.LogManager;\r
+import org.apache.logging.log4j.Logger;\r
+import org.zkoss.bind.ValidationContext;\r
+import org.zkoss.bind.validator.AbstractValidator;\r
+\r
+import com.ibm.nosql.json.api.BasicDBObject;\r
+\r
+import user.jobengine.zk.model.JobEditorModel2;\r
+\r
+public class TemplateNameValidator extends AbstractValidator {\r
+\r
+       private static final Logger logger = LogManager.getLogger();\r
+\r
+       private JobEditorModel2 jobEditorModel2;\r
+\r
+       public TemplateNameValidator(JobEditorModel2 jobEditorModel2) {\r
+               this.jobEditorModel2 = jobEditorModel2;\r
+       }\r
+\r
+       @Override\r
+       public void validate(ValidationContext context) {\r
+               BasicDBObject uneditedJob = (BasicDBObject) context.getProperty().getBase();\r
+               String originalTemplateName = uneditedJob.getString("template");\r
+               jobEditorModel2.setOriginalTemplateName(originalTemplateName);\r
+               String newTemplateName = (String) context.getProperties("template")[0].getValue();\r
+\r
+               if (FilenameUtils.getExtension(newTemplateName).equals("xml")\r
+                               && ifTemplateNameChanged(uneditedJob, newTemplateName)) {\r
+                       logger.info("{} is a proper filename", newTemplateName);\r
+                       uneditedJob.put("template", newTemplateName);\r
+                       jobEditorModel2.setTemplateNameChanged(true);\r
+                       jobEditorModel2.setProcessDataChanged(true);\r
+               } else {\r
+                       logger.info("{} is not a proper filename", newTemplateName);\r
+               }\r
+       }\r
+\r
+       private boolean ifTemplateNameChanged(BasicDBObject uneditedJob, String newTemplateName) {\r
+               return !uneditedJob.getString("template").equals(newTemplateName);\r
+       }\r
+}\r