Skip to content

Commit 043d22e

Browse files
authored
Merge pull request #415 from skyline75489/fix/field-definition-not-exist
Fix NPE when field definition does not exist
2 parents d18b5e8 + 33e0983 commit 043d22e

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

src/main/java/com/cronutils/builder/CronBuilder.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import com.cronutils.model.field.CronField;
2424
import com.cronutils.model.field.CronFieldName;
2525
import com.cronutils.model.field.constraint.FieldConstraints;
26+
import com.cronutils.model.field.definition.FieldDefinition;
2627
import com.cronutils.model.field.expression.FieldExpression;
2728
import com.cronutils.model.field.expression.visitor.ValidationFieldExpressionVisitor;
2829
import com.cronutils.utils.VisibleForTesting;
@@ -90,7 +91,10 @@ public Cron instance() {
9091
CronBuilder addField(final CronFieldName name, final FieldExpression expression) {
9192
checkState(definition != null, "CronBuilder not initialized.");
9293

93-
final FieldConstraints constraints = definition.getFieldDefinition(name).getConstraints();
94+
final FieldDefinition fieldDefinition = definition.getFieldDefinition(name);
95+
checkState(fieldDefinition != null, "Cron field definition does not exist: %s", name);
96+
97+
final FieldConstraints constraints = fieldDefinition.getConstraints();
9498
expression.accept(new ValidationFieldExpressionVisitor(constraints));
9599
fields.put(name, new CronField(name, expression, constraints));
96100

0 commit comments

Comments
 (0)