Skip to content

Commit c2f4833

Browse files
authored
Add overrides for [core#1211] (JsonParser.willInternPropertyNames()) (#681)
1 parent 1fad53e commit c2f4833

5 files changed

Lines changed: 33 additions & 0 deletions

File tree

avro/src/main/java/tools/jackson/dataformat/avro/AvroParser.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,13 @@ public JacksonFeatureSet<StreamReadCapability> streamReadCapabilities() {
9494
return AVRO_READ_CAPABILITIES;
9595
}
9696

97+
// @since 3.2
98+
// Avro property names are interned via InternCache in AvroFieldReader
99+
@Override
100+
public boolean willInternPropertyNames() {
101+
return true;
102+
}
103+
97104
/*
98105
/**********************************************************************
99106
/* ParserBase method impls

cbor/src/main/java/tools/jackson/dataformat/cbor/CBORParser.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,12 @@ public JacksonFeatureSet<StreamReadCapability> streamReadCapabilities() {
345345
return CBOR_READ_CAPABILITIES;
346346
}
347347

348+
// @since 3.2
349+
@Override
350+
public boolean willInternPropertyNames() {
351+
return _symbols.willInternStrings();
352+
}
353+
348354
/*
349355
/**********************************************************************
350356
/* Extended API

ion/src/main/java/tools/jackson/dataformat/ion/IonParser.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,13 @@ public JacksonFeatureSet<StreamReadCapability> streamReadCapabilities() {
145145
return ION_READ_CAPABILITIES;
146146
}
147147

148+
// @since 3.2
149+
// Ion format does not intern property names
150+
@Override
151+
public boolean willInternPropertyNames() {
152+
return false;
153+
}
154+
148155
/*
149156
/**********************************************************************
150157
/* JsonParser implementation: input state handling

protobuf/src/main/java/tools/jackson/dataformat/protobuf/ProtobufParser.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,13 @@ public JacksonFeatureSet<StreamReadCapability> streamReadCapabilities() {
328328
return PROTOBUF_READ_CAPABILITIES;
329329
}
330330

331+
// @since 3.2
332+
// Protobuf property names are interned via InternCache at schema construction
333+
@Override
334+
public boolean willInternPropertyNames() {
335+
return true;
336+
}
337+
331338
/*
332339
/**********************************************************************
333340
/* Abstract impls, overrides: input handling

smile/src/main/java/tools/jackson/dataformat/smile/SmileParserBase.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,6 +240,12 @@ public JacksonFeatureSet<StreamReadCapability> streamReadCapabilities() {
240240
return SMILE_READ_CAPABILITIES;
241241
}
242242

243+
// @since 3.2
244+
@Override
245+
public boolean willInternPropertyNames() {
246+
return _symbols.willInternStrings();
247+
}
248+
243249
public final boolean mayContainRawBinary() {
244250
return _mayContainRawBinary;
245251
}

0 commit comments

Comments
 (0)