Skip to content

Commit 944c129

Browse files
committed
fixing BC problem introduced by #148 , by converting Pattern instances from/to java.util.regex.Pattern in all public methods
1 parent d5ff51e commit 944c129

File tree

3 files changed

+17
-8
lines changed

3 files changed

+17
-8
lines changed

core/src/main/java/org/everit/json/schema/ObjectSchema.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import static java.util.Objects.requireNonNull;
44

5-
import com.google.re2j.Pattern;
65
import java.util.ArrayList;
76
import java.util.Collections;
87
import java.util.HashMap;
@@ -11,8 +10,11 @@
1110
import java.util.Map;
1211
import java.util.Objects;
1312
import java.util.Set;
13+
1414
import org.everit.json.schema.internal.JSONPrinter;
1515

16+
import com.google.re2j.Pattern;
17+
1618
/**
1719
* Object schema validator.
1820
*/
@@ -87,13 +89,13 @@ public Builder minProperties(Integer minProperties) {
8789
return this;
8890
}
8991

90-
public Builder patternProperty(Pattern pattern, Schema schema) {
91-
this.patternProperties.put(pattern, schema);
92+
public Builder patternProperty(java.util.regex.Pattern pattern, Schema schema) {
93+
this.patternProperties.put(Pattern.compile(pattern.toString()), schema);
9294
return this;
9395
}
9496

9597
public Builder patternProperty(String pattern, Schema schema) {
96-
return patternProperty(Pattern.compile(pattern), schema);
98+
return patternProperty(java.util.regex.Pattern.compile(pattern), schema);
9799
}
98100

99101
/**

core/src/main/java/org/everit/json/schema/StringSchema.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,12 @@
33
import static java.util.Objects.requireNonNull;
44
import static org.everit.json.schema.FormatValidator.NONE;
55

6-
import com.google.re2j.Pattern;
76
import java.util.Objects;
7+
88
import org.everit.json.schema.internal.JSONPrinter;
99

10+
import com.google.re2j.Pattern;
11+
1012
/**
1113
* {@code String} schema validator.
1214
*/
@@ -113,10 +115,14 @@ public Integer getMinLength() {
113115
return minLength;
114116
}
115117

116-
public Pattern getPattern() {
118+
Pattern getRE2JPattern() {
117119
return pattern;
118120
}
119121

122+
public java.util.regex.Pattern getPattern() {
123+
return java.util.regex.Pattern.compile(pattern.toString());
124+
}
125+
120126
@Override void accept(Visitor visitor) {
121127
visitor.visitStringSchema(this);
122128
}

core/src/main/java/org/everit/json/schema/Visitor.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
package org.everit.json.schema;
22

3-
import com.google.re2j.Pattern;
43
import java.util.List;
54
import java.util.Map;
65
import java.util.Set;
76

7+
import com.google.re2j.Pattern;
8+
89
abstract class Visitor {
910

1011
void visitNumberSchema(NumberSchema numberSchema) {
@@ -165,7 +166,7 @@ void visitRequiredPropertyName(String requiredPropName) {
165166
void visitStringSchema(StringSchema stringSchema) {
166167
visitMinLength(stringSchema.getMinLength());
167168
visitMaxLength(stringSchema.getMaxLength());
168-
visitPattern(stringSchema.getPattern());
169+
visitPattern(stringSchema.getRE2JPattern());
169170
visitFormat(stringSchema.getFormatValidator());
170171
}
171172

0 commit comments

Comments
 (0)