flashJd commented on code in PR #728:
URL: 
https://github.com/apache/flink-kubernetes-operator/pull/728#discussion_r1429453681


##########
flink-autoscaler/src/main/java/org/apache/flink/autoscaler/utils/AutoScalerUtils.java:
##########
@@ -94,4 +99,106 @@ public static boolean excludeVerticesFromScaling(
         conf.set(AutoScalerOptions.VERTEX_EXCLUDE_IDS, new 
ArrayList<>(excludedIds));
         return anyAdded;
     }
+
+    /** Quartz doesn't have the invertTimeRange flag so rewrite this method. */
+    static boolean isTimeIncluded(CronCalendar cron, long timeInMillis) {
+        if (cron.getBaseCalendar() != null
+                && !cron.getBaseCalendar().isTimeIncluded(timeInMillis)) {
+            return false;
+        } else {
+            return cron.getCronExpression().isSatisfiedBy(new 
Date(timeInMillis));
+        }
+    }
+
+    static Optional<DailyCalendar> interpretAsDaily(String subExpression) {
+        String[] splits = subExpression.split("-");
+        if (splits.length != 2) {
+            return Optional.empty();
+        }
+        try {
+            DailyCalendar daily = new DailyCalendar(splits[0], splits[1]);
+            daily.setInvertTimeRange(true);
+            return Optional.of(daily);
+        } catch (Exception e) {
+            return Optional.empty();
+        }
+    }
+
+    static Optional<CronCalendar> interpretAsCron(String subExpression) {
+        try {
+            return Optional.of(new CronCalendar(subExpression));
+        } catch (Exception e) {
+            return Optional.empty();

Review Comment:
   Incorrect expression config will first be validated in `DefaultValidator` 
and report exception there, I've added extra tests in `DefaultValidatorTest`



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: issues-unsubscr...@flink.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to