Skip to content

Commit 36aaccb

Browse files
committed
Refactor and optimize code
1 parent be179e3 commit 36aaccb

File tree

94 files changed

+1029
-768
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

94 files changed

+1029
-768
lines changed

src/main/java/com/relogiclabs/json/schema/JsonAssert.java

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,15 @@
11
package com.relogiclabs.json.schema;
22

33
import com.relogiclabs.json.schema.internal.util.DebugUtilities;
4-
import com.relogiclabs.json.schema.message.MessageFormatter;
54
import com.relogiclabs.json.schema.tree.DataTree;
65
import com.relogiclabs.json.schema.tree.JsonTree;
76
import com.relogiclabs.json.schema.tree.RuntimeContext;
87
import com.relogiclabs.json.schema.tree.SchemaTree;
98
import com.relogiclabs.json.schema.tree.TreeType;
109
import lombok.Getter;
1110

11+
import static com.relogiclabs.json.schema.message.MessageFormatter.JSON_ASSERTION;
12+
import static com.relogiclabs.json.schema.message.MessageFormatter.SCHEMA_ASSERTION;
1213
import static com.relogiclabs.json.schema.tree.TreeType.JSON_TREE;
1314
import static com.relogiclabs.json.schema.tree.TreeType.SCHEMA_TREE;
1415

@@ -40,10 +41,10 @@ public JsonAssert(String schema) {
4041
*/
4142
public JsonAssert(String expected, TreeType type) {
4243
if(type == SCHEMA_TREE) {
43-
runtime = new RuntimeContext(MessageFormatter.SCHEMA_ASSERTION, true);
44+
runtime = new RuntimeContext(SCHEMA_ASSERTION, true);
4445
expectedTree = new SchemaTree(runtime, expected);
4546
} else {
46-
runtime = new RuntimeContext(MessageFormatter.JSON_ASSERTION, true);
47+
runtime = new RuntimeContext(JSON_ASSERTION, true);
4748
expectedTree = new JsonTree(runtime, expected);
4849
}
4950
}
@@ -58,7 +59,7 @@ public void isValid(String json) {
5859
var jsonTree = new JsonTree(runtime, json);
5960
DebugUtilities.print(expectedTree, jsonTree);
6061
if(!expectedTree.match(jsonTree))
61-
throw new IllegalStateException("Exception not thrown");
62+
throw new IllegalStateException("Invalid runtime state");
6263
}
6364

6465
/**

src/main/java/com/relogiclabs/json/schema/JsonSchema.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
package com.relogiclabs.json.schema;
22

3-
import com.relogiclabs.json.schema.internal.tree.ExceptionRegistry;
43
import com.relogiclabs.json.schema.internal.util.DebugUtilities;
5-
import com.relogiclabs.json.schema.message.MessageFormatter;
4+
import com.relogiclabs.json.schema.tree.ExceptionRegistry;
65
import com.relogiclabs.json.schema.tree.JsonTree;
76
import com.relogiclabs.json.schema.tree.RuntimeContext;
87
import com.relogiclabs.json.schema.tree.SchemaTree;
98
import lombok.Getter;
109

10+
import static com.relogiclabs.json.schema.message.MessageFormatter.SCHEMA_VALIDATION;
11+
1112
/**
1213
* {@code JsonSchema} provides Schema validation functionalities for JSON document.
1314
*/
@@ -23,7 +24,7 @@ public class JsonSchema {
2324
* @param schema A Schema string for validation
2425
*/
2526
public JsonSchema(String schema) {
26-
runtime = new RuntimeContext(MessageFormatter.SCHEMA_VALIDATION, false);
27+
runtime = new RuntimeContext(SCHEMA_VALIDATION, false);
2728
exceptions = runtime.getExceptions();
2829
schemaTree = new SchemaTree(runtime, schema);
2930
}

src/main/java/com/relogiclabs/json/schema/collection/Keyable.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,4 @@
22

33
public interface Keyable<TK> {
44
TK getKey();
5-
}
5+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
package com.relogiclabs.json.schema.exception;
2+
3+
import com.relogiclabs.json.schema.message.ErrorDetail;
4+
5+
public class MisplacedOptionalException extends CommonException {
6+
public MisplacedOptionalException(ErrorDetail detail) {
7+
super(detail);
8+
}
9+
}

src/main/java/com/relogiclabs/json/schema/function/CoreFunctions1.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@
55
import com.relogiclabs.json.schema.message.ErrorDetail;
66
import com.relogiclabs.json.schema.message.ExpectedDetail;
77
import com.relogiclabs.json.schema.tree.RuntimeContext;
8-
import com.relogiclabs.json.schema.types.JArray;
9-
import com.relogiclabs.json.schema.types.JInteger;
10-
import com.relogiclabs.json.schema.types.JObject;
11-
import com.relogiclabs.json.schema.types.JString;
12-
import com.relogiclabs.json.schema.types.JUndefined;
8+
import com.relogiclabs.json.schema.type.JArray;
9+
import com.relogiclabs.json.schema.type.JInteger;
10+
import com.relogiclabs.json.schema.type.JObject;
11+
import com.relogiclabs.json.schema.type.JString;
12+
import com.relogiclabs.json.schema.type.JUndefined;
1313

1414
import static com.relogiclabs.json.schema.message.ErrorCode.ALEN01;
1515
import static com.relogiclabs.json.schema.message.ErrorCode.ALEN02;

src/main/java/com/relogiclabs/json/schema/function/CoreFunctions3.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
import com.relogiclabs.json.schema.message.ErrorDetail;
66
import com.relogiclabs.json.schema.message.ExpectedDetail;
77
import com.relogiclabs.json.schema.tree.RuntimeContext;
8-
import com.relogiclabs.json.schema.types.JArray;
9-
import com.relogiclabs.json.schema.types.JNode;
10-
import com.relogiclabs.json.schema.types.JObject;
11-
import com.relogiclabs.json.schema.types.JString;
8+
import com.relogiclabs.json.schema.type.JArray;
9+
import com.relogiclabs.json.schema.type.JNode;
10+
import com.relogiclabs.json.schema.type.JObject;
11+
import com.relogiclabs.json.schema.type.JString;
1212

1313
import java.net.URI;
1414
import java.util.Arrays;

src/main/java/com/relogiclabs/json/schema/function/FunctionBase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.relogiclabs.json.schema.function;
22

33
import com.relogiclabs.json.schema.tree.RuntimeContext;
4-
import com.relogiclabs.json.schema.types.JFunction;
4+
import com.relogiclabs.json.schema.type.JFunction;
55
import lombok.Getter;
66
import lombok.Setter;
77

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package com.relogiclabs.json.schema.internal.builder;
2+
3+
import com.relogiclabs.json.schema.type.JAlias;
4+
import lombok.Getter;
5+
import lombok.Setter;
6+
import lombok.experimental.Accessors;
7+
8+
@Getter @Setter
9+
@Accessors(fluent = true)
10+
public class JAliasBuilder extends JNodeBuilder<JAliasBuilder> {
11+
private String name;
12+
13+
@Override
14+
public JAlias build() {
15+
return JAlias.from(this);
16+
}
17+
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package com.relogiclabs.json.schema.internal.builder;
2+
3+
import com.relogiclabs.json.schema.type.JArray;
4+
import com.relogiclabs.json.schema.type.JNode;
5+
import lombok.Getter;
6+
import lombok.Setter;
7+
import lombok.experimental.Accessors;
8+
9+
import java.util.List;
10+
11+
@Getter @Setter
12+
@Accessors(fluent = true)
13+
public class JArrayBuilder extends JNodeBuilder<JArrayBuilder> {
14+
private List<JNode> elements;
15+
16+
@Override
17+
public JArray build() {
18+
return JArray.from(this);
19+
}
20+
}
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
package com.relogiclabs.json.schema.internal.builder;
2+
3+
import com.relogiclabs.json.schema.type.JBoolean;
4+
5+
public class JBooleanBuilder extends JPrimitiveBuilder<Boolean> {
6+
@Override
7+
public JBoolean build() {
8+
return JBoolean.from(this);
9+
}
10+
}

0 commit comments

Comments
 (0)