1
1
package com .fasterxml .jackson .module .jsonSchema ;
2
2
3
3
import com .fasterxml .jackson .annotation .JsonTypeInfo .Id ;
4
+ import com .fasterxml .jackson .databind .DatabindContext ;
4
5
import com .fasterxml .jackson .databind .JavaType ;
5
6
import com .fasterxml .jackson .databind .jsonFormatVisitors .JsonFormatTypes ;
6
- import com .fasterxml .jackson .databind .jsontype .TypeIdResolver ;
7
+ import com .fasterxml .jackson .databind .jsontype .impl . TypeIdResolverBase ;
7
8
import com .fasterxml .jackson .databind .type .TypeFactory ;
8
- import com .fasterxml .jackson .module .jsonSchema .types .AnySchema ;
9
- import com .fasterxml .jackson .module .jsonSchema .types .ArraySchema ;
10
- import com .fasterxml .jackson .module .jsonSchema .types .BooleanSchema ;
11
- import com .fasterxml .jackson .module .jsonSchema .types .IntegerSchema ;
12
- import com .fasterxml .jackson .module .jsonSchema .types .NullSchema ;
13
- import com .fasterxml .jackson .module .jsonSchema .types .NumberSchema ;
14
- import com .fasterxml .jackson .module .jsonSchema .types .ObjectSchema ;
15
- import com .fasterxml .jackson .module .jsonSchema .types .StringSchema ;
9
+ import com .fasterxml .jackson .module .jsonSchema .types .*;
16
10
17
- public class JsonSchemaIdResolver implements TypeIdResolver
18
- {
11
+ public class JsonSchemaIdResolver extends TypeIdResolverBase
12
+ {
19
13
/* This is Wrong: should not use defaultInstance() for anything.
20
14
* But has to work for now...
21
15
*/
@@ -30,9 +24,6 @@ public class JsonSchemaIdResolver implements TypeIdResolver
30
24
31
25
public JsonSchemaIdResolver () { }
32
26
33
- /* (non-Javadoc)
34
- * @see com.fasterxml.jackson.databind.jsontype.TypeIdResolver#idFromValue(java.lang.Object)
35
- */
36
27
@ Override
37
28
public String idFromValue (Object value ) {
38
29
if ( value instanceof JsonSchema ) {
@@ -41,27 +32,24 @@ public String idFromValue(Object value) {
41
32
return null ;
42
33
}
43
34
44
- /* (non-Javadoc)
45
- * @see com.fasterxml.jackson.databind.jsontype.TypeIdResolver#idFromValueAndType(java.lang.Object, java.lang.Class)
46
- */
47
35
@ Override
48
36
public String idFromValueAndType (Object value , Class <?> suggestedType ) {
49
37
return idFromValue (value );
50
38
}
51
39
52
40
@ Override
53
- public JavaType typeFromId (String id ) {
41
+ public JavaType typeFromId (DatabindContext context , String id ) {
54
42
switch (JsonFormatTypes .forValue (id )) {
55
- case ANY : return any ;
56
- case ARRAY : return array ;
57
- case BOOLEAN : return booleanboolean ;
58
- case INTEGER : return integer ;
59
- case NULL : return nullnull ;
60
- case NUMBER : return number ;
61
- case OBJECT : return object ;
62
- case STRING : return string ;
43
+ case ANY : return any ;
44
+ case ARRAY : return array ;
45
+ case BOOLEAN : return booleanboolean ;
46
+ case INTEGER : return integer ;
47
+ case NULL : return nullnull ;
48
+ case NUMBER : return number ;
49
+ case OBJECT : return object ;
50
+ case STRING : return string ;
63
51
default :
64
- return null ;
52
+ return null ;
65
53
}
66
54
}
67
55
0 commit comments