Skip to content

Commit 9084d4f

Browse files
committed
Merge branch '2.15' into 2.16
2 parents 4dcd1ec + ffeb90b commit 9084d4f

File tree

13 files changed

+29
-27
lines changed

13 files changed

+29
-27
lines changed

ion/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ SomeType otherValue = mapper.readValue(data, SomeType.class);
3434

3535
### java.time JSR 310
3636

37-
With version 2.12 (to be released in September 2020), there will be optional support for
37+
Version 2.12 (released on November 28, 2020) added support for
3838
(de)serializing some `java.time` classes directly from/to Ion timestamp values.
39-
To enable it, you need to registed module `IonJavaTimeModule` like so:
39+
To enable it, you need to register module `IonJavaTimeModule` like so:
4040

4141
```java
4242
IonObjectMapper mapper = IonObjectMapper.builder()

ion/src/main/java/com/fasterxml/jackson/dataformat/ion/IonGenerator.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.io.IOException;
2020
import java.math.BigDecimal;
2121
import java.math.BigInteger;
22+
import java.nio.charset.StandardCharsets;
2223
import java.util.Calendar;
2324

2425
import com.fasterxml.jackson.core.Base64Variant;
@@ -228,7 +229,7 @@ public JacksonFeatureSet<StreamWriteCapability> getWriteCapabilities() {
228229
@Override
229230
public void writeNumber(int value) throws IOException {
230231
_verifyValueWrite("write numeric value");
231-
_writer.writeInt((long)value);
232+
_writer.writeInt(value);
232233
}
233234

234235
@Override
@@ -256,7 +257,7 @@ public void writeNumber(double value) throws IOException {
256257
@Override
257258
public void writeNumber(float value) throws IOException {
258259
_verifyValueWrite("write numeric value");
259-
_writer.writeFloat((double) value);
260+
_writer.writeFloat(value);
260261
}
261262

262263
@Override
@@ -322,7 +323,7 @@ public void writeString(char[] buffer, int offset, int length) throws IOExceptio
322323
@Override
323324
public void writeUTF8String(byte[] buffer, int offset, int length) throws IOException {
324325
// Ion doesn't have matching optimized method, so:
325-
writeString(new String(buffer, offset, length, "UTF-8"));
326+
writeString(new String(buffer, offset, length, StandardCharsets.UTF_8));
326327
}
327328

328329
/*

ion/src/main/java/com/fasterxml/jackson/dataformat/ion/jsr310/IonTimestampInstantDeserializer.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ public JsonDeserializer<T> createContextual(DeserializationContext ctxt, BeanPro
9595

9696
final JsonFormat.Value format = findFormatOverrides(ctxt, property, handledType());
9797
if (format != null) {
98-
return new IonTimestampInstantDeserializer<T>(this,
98+
return new IonTimestampInstantDeserializer<>(this,
9999
format.getFeature(Feature.ADJUST_DATES_TO_CONTEXT_TIME_ZONE));
100100
}
101101
return this;

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/DataBindRoundtripTest.java

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,7 @@ public void testNullFields() throws IOException
130130
doTests(new Bean(), new IonObjectMapper());
131131
}
132132

133-
private void doTests(Bean bean, IonObjectMapper mapper) throws IOException
134-
{
133+
private void doTests(Bean bean, IonObjectMapper mapper) {
135134
for (RoundTrippers rt : RoundTrippers.values()) {
136135
try
137136
{
@@ -156,9 +155,9 @@ public void testIonRoot() throws IOException {
156155
Bean bean = m.readValue(root, Bean.class);
157156
assertNotNull(bean);
158157
assertEquals(bean.a, "test");
159-
assertTrue(bean.b == 0.25);
158+
assertEquals(0.25, bean.b, 0.0);
160159
assertArrayEquals(new byte[0], bean.data);
161-
assertEquals(bean.state, true);
160+
assertTrue(bean.state);
162161
assertNotNull(bean.sub);
163162
assertEquals("yellow", bean.sub.getValue());
164163
assertEquals("testSymbol", bean.symbol);
@@ -211,7 +210,7 @@ private void _testRoundTrip(Bean bean, RoundTrippers rt, IonObjectMapper m) thro
211210

212211
assertNotNull(result);
213212
assertEquals(bean.a, result.a);
214-
assertTrue(bean.b == result.b);
213+
assertEquals(bean.b, result.b, 0.0);
215214
assertArrayEquals(bean.data, result.data);
216215
assertEquals(bean.state, result.state);
217216
if (bean.sub == null)
@@ -227,6 +226,6 @@ private void _testRoundTrip(Bean bean, RoundTrippers rt, IonObjectMapper m) thro
227226
assertEquals(bean.enumVal, result.enumVal);
228227
assertEquals(bean.bigDec, result.bigDec);
229228
assertEquals(bean.bigInt, result.bigInt);
230-
assertTrue(bean.f == result.f);
229+
assertEquals(bean.f, result.f, 0.0);
231230
}
232231
}

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/IonGeneratorTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ public class IonGeneratorTest {
4444
"}";
4545

4646
static {
47-
final Map<String, String> map = new HashMap<String, String>();
47+
final Map<String, String> map = new HashMap<>();
4848
map.put("a", "A");
4949
map.put("b", "B");
5050
map.put("c", "C");
@@ -78,7 +78,7 @@ public void setUp() throws Exception {
7878
@Test
7979
public void testSimpleWrite() throws Exception {
8080
joiGenerator.writeBoolean(true);
81-
assertThat(output.get(0), is((IonValue)ionSystem.newBool(true)));
81+
assertThat(output.get(0), is(ionSystem.newBool(true)));
8282
}
8383

8484
@Test

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/IonParserTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ public void testGetNumberTypeAndValue() throws Exception {
6464
IonParser decimalParser = new IonFactory().createParser(ionDecimal);
6565
Assert.assertEquals(JsonToken.VALUE_NUMBER_FLOAT, decimalParser.nextToken());
6666
Assert.assertEquals(JsonParser.NumberType.BIG_DECIMAL, decimalParser.getNumberType());
67-
Assert.assertTrue(new BigDecimal("" + decimalValue).compareTo((BigDecimal)decimalParser.getNumberValue()) == 0);
67+
Assert.assertEquals(0, new BigDecimal("" + decimalValue).compareTo((BigDecimal) decimalParser.getNumberValue()));
6868

6969
Double floatValue = Double.MAX_VALUE;
7070
IonValue ionFloat = ion.newFloat(floatValue);
@@ -78,7 +78,7 @@ public void testGetNumberTypeAndValue() throws Exception {
7878
IonParser bigDecimalParser = new IonFactory().createParser(ionBigDecimal);
7979
Assert.assertEquals(JsonToken.VALUE_NUMBER_FLOAT, bigDecimalParser.nextToken());
8080
Assert.assertEquals(JsonParser.NumberType.BIG_DECIMAL, bigDecimalParser.getNumberType());
81-
Assert.assertTrue(bigDecimalValue.compareTo((BigDecimal)bigDecimalParser.getNumberValue()) == 0);
81+
Assert.assertEquals(0, bigDecimalValue.compareTo((BigDecimal) bigDecimalParser.getNumberValue()));
8282
}
8383

8484
@Test

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/PolymorphicRoundtripTest.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,14 +124,14 @@ public void testSelectivePolymorphism() throws IOException {
124124
// to be chosen (and we expect that first id to be the most narrow type, ChildBeanSub).
125125
Bean deserialized = mapper.readValue(serialized, Bean.class);
126126

127-
assertTrue(deserialized.child.getClass().equals(ChildBeanSub.class));
127+
assertEquals(deserialized.child.getClass(), ChildBeanSub.class);
128128
assertEquals(((ChildBeanSub) original.child).extraField, ((ChildBeanSub) deserialized.child).extraField);
129129

130130
// second, try deserializing with the wider type (ChildBean). We're losing data (extraField)
131131
preferredTypeId = getClass().getCanonicalName() + "$ChildBean";
132132
deserialized = mapper.readValue(serialized, Bean.class);
133133

134-
assertTrue(deserialized.child.getClass().equals(ChildBean.class));
134+
assertEquals(deserialized.child.getClass(), ChildBean.class);
135135
assertEquals(original.child.someField, deserialized.child.someField);
136136

137137
// third, try deserializing into an Object. The child node should deserialize, but immediately fail mapping.
@@ -319,7 +319,7 @@ class MultipleClassNameIdResolver extends ClassNameIdResolver implements Multipl
319319

320320
@Override
321321
public String[] idsFromValue(Object value) {
322-
List<String> ids = new ArrayList<String>();
322+
List<String> ids = new ArrayList<>();
323323
Class<?> cls = value.getClass();
324324
while (null != cls) {
325325
ids.add(super.idFromValueAndType(value, cls));

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/SimpleIonWriteTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ private void _writeSimple(JsonGenerator gen) throws IOException
8383
gen.writeStartObject();
8484
gen.writeStringField("a", "value");
8585
gen.writeNumberField("b", 42);
86-
((IonGenerator)gen).writeFieldName("c");
86+
gen.writeFieldName("c");
8787
((IonGenerator)gen).writeNull(IonType.INT);
8888
gen.writeEndObject();
8989
gen.close();

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/failing/UncaughtException303Test.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ void verifyException(Throwable e, String match)
3131
{
3232
String msg = e.getMessage();
3333
String lmsg = (msg == null) ? "" : msg.toLowerCase();
34-
if (lmsg.indexOf(match.toLowerCase()) < 0) {
34+
if (!lmsg.contains(match.toLowerCase())) {
3535
fail("Expected an exception with a substrings ("+match+"): got one with message \""+msg+"\"");
3636
}
3737
}

ion/src/test/java/com/fasterxml/jackson/dataformat/ion/ionvalue/IonValueDeserializerTest.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818

1919
import static org.junit.Assert.assertEquals;
2020
import static com.fasterxml.jackson.databind.PropertyNamingStrategies.SNAKE_CASE;
21+
import static org.junit.Assert.assertNull;
2122

2223
public class IonValueDeserializerTest {
2324
private static class Data<T> {
@@ -200,7 +201,7 @@ public void testWithMissingProperty() throws IOException
200201
String input2 = "{required:{}}";
201202
MyBean deserializedBean2 = ionObjectMapper.readValue(input2, MyBean.class);
202203
assertEquals(ionSystem.newEmptyStruct(), deserializedBean2.required);
203-
assertEquals(null, deserializedBean2.optional);
204+
assertNull(deserializedBean2.optional);
204205
}
205206

206207
@Test

0 commit comments

Comments
 (0)