@Test public void testBuildCronParam() { final MethodInfo target = index.getClassByName(DotName.createSimple(SpringScheduledMethodsBean.class.getName())) .method("checkEverySecondCron"); AnnotationInstance annotation = target.annotation(SpringScheduledProcessor.SPRING_SCHEDULED); AnnotationValue annotationValue = springScheduledProcessor.buildCronParam(annotation.values()); assertThat(annotationValue.name()).isEqualTo("cron"); assertThat(annotationValue.value()).isEqualTo("0/1 * * * * ?"); }
AnnotationValue buildCronParam(List<AnnotationValue> springAnnotationValues) { String cronExpression = getAnnotationValueByName(springAnnotationValues, "cron").get().asString(); cronExpression = cronExpression.replace("${", "{"); return AnnotationValue.createStringValue("cron", cronExpression); }
SpringScheduledProcessor { AnnotationValue buildCronParam(List<AnnotationValue> springAnnotationValues) { String cronExpression = getAnnotationValueByName(springAnnotationValues, "cron").get().asString(); cronExpression = cronExpression.replace("${", "{"); return AnnotationValue.createStringValue("cron", cronExpression); } }
SpringScheduledProcessor { AnnotationValue buildCronParam(List<AnnotationValue> springAnnotationValues) { String cronExpression = getAnnotationValueByName(springAnnotationValues, "cron").get().asString(); cronExpression = cronExpression.replace("${", "{"); return AnnotationValue.createStringValue("cron", cronExpression); }  }
SpringScheduledProcessor { AnnotationValue buildCronParam(List<AnnotationValue> springAnnotationValues) { String cronExpression = getAnnotationValueByName(springAnnotationValues, "cron").get().asString(); cronExpression = cronExpression.replace("${", "{"); return AnnotationValue.createStringValue("cron", cronExpression); }  @BuildStep List<UnremovableBeanBuildItem> unremovableBeans(); }
SpringScheduledProcessor { AnnotationValue buildCronParam(List<AnnotationValue> springAnnotationValues) { String cronExpression = getAnnotationValueByName(springAnnotationValues, "cron").get().asString(); cronExpression = cronExpression.replace("${", "{"); return AnnotationValue.createStringValue("cron", cronExpression); }  @BuildStep List<UnremovableBeanBuildItem> unremovableBeans();  }