|
7 | 7 |
|
8 | 8 | import java.io.OutputStream; |
9 | 9 | import java.nio.ByteBuffer; |
| 10 | +import software.amazon.smithy.java.core.serde.SerializationException; |
10 | 11 | import software.amazon.smithy.java.core.serde.ShapeDeserializer; |
11 | 12 | import software.amazon.smithy.java.core.serde.ShapeSerializer; |
12 | 13 | import software.amazon.smithy.java.json.JsonSerdeProvider; |
13 | 14 | import software.amazon.smithy.java.json.JsonSettings; |
14 | 15 | import software.amazon.smithy.utils.SmithyInternalApi; |
| 16 | +import tools.jackson.core.JacksonException; |
15 | 17 | import tools.jackson.core.ObjectReadContext; |
16 | 18 | import tools.jackson.core.ObjectWriteContext; |
17 | 19 | import tools.jackson.core.PrettyPrinter; |
@@ -56,15 +58,23 @@ public ShapeDeserializer newDeserializer( |
56 | 58 | byte[] source, |
57 | 59 | JsonSettings settings |
58 | 60 | ) { |
59 | | - return new JacksonJsonDeserializer(FACTORY.createParser(readCtx(settings), source), settings); |
| 61 | + try { |
| 62 | + return new JacksonJsonDeserializer(FACTORY.createParser(readCtx(settings), source), settings); |
| 63 | + } catch (JacksonException e) { |
| 64 | + throw new SerializationException(e); |
| 65 | + } |
60 | 66 | } |
61 | 67 |
|
62 | 68 | @Override |
63 | 69 | public ShapeDeserializer newDeserializer(ByteBuffer source, JsonSettings settings) { |
64 | 70 | int offset = source.arrayOffset() + source.position(); |
65 | 71 | int length = source.remaining(); |
66 | 72 | var ctx = readCtx(settings); |
67 | | - return new JacksonJsonDeserializer(FACTORY.createParser(ctx, source.array(), offset, length), settings); |
| 73 | + try { |
| 74 | + return new JacksonJsonDeserializer(FACTORY.createParser(ctx, source.array(), offset, length), settings); |
| 75 | + } catch (JacksonException e) { |
| 76 | + throw new SerializationException(e); |
| 77 | + } |
68 | 78 | } |
69 | 79 |
|
70 | 80 | @Override |
|
0 commit comments