@@ -48,6 +48,7 @@ public enum Presence
4848 }
4949
5050 private Presence presence ;
51+ private final PrimitiveValue deprecated ;
5152 private final PrimitiveType primitiveType ;
5253 private final ByteOrder byteOrder ;
5354 private final PrimitiveValue minValue ;
@@ -62,6 +63,7 @@ public enum Presence
6263 Encoding ()
6364 {
6465 presence = Presence .REQUIRED ;
66+ deprecated = null ;
6567 primitiveType = null ;
6668 byteOrder = ByteOrder .LITTLE_ENDIAN ;
6769 minValue = null ;
@@ -76,6 +78,7 @@ public enum Presence
7678
7779 Encoding (
7880 final Presence presence ,
81+ final PrimitiveValue deprecated ,
7982 final PrimitiveType primitiveType ,
8083 final ByteOrder byteOrder ,
8184 final PrimitiveValue minValue ,
@@ -91,6 +94,7 @@ public enum Presence
9194 Verify .notNull (byteOrder , "byteOrder" );
9295
9396 this .primitiveType = primitiveType ;
97+ this .deprecated = deprecated ;
9498 this .presence = presence ;
9599 this .byteOrder = byteOrder ;
96100 this .minValue = minValue ;
@@ -183,6 +187,16 @@ public void presence(final Presence presence)
183187 this .presence = presence ;
184188 }
185189
190+ /**
191+ * The version at which a field was deprecated.
192+ *
193+ * @return the version at which a field was deprecated.
194+ */
195+ public PrimitiveValue deprecated ()
196+ {
197+ return this .deprecated ;
198+ }
199+
186200 /**
187201 * The most applicable null value for the encoded type.
188202 *
@@ -276,6 +290,7 @@ public String toString()
276290 return
277291 "Encoding{" +
278292 "presence=" + presence +
293+ ", deprecated=" + deprecated +
279294 ", primitiveType=" + primitiveType +
280295 ", byteOrder=" + byteOrder +
281296 ", minValue=" + minValue +
@@ -296,6 +311,7 @@ public static class Builder
296311 {
297312 private PrimitiveType primitiveType = null ;
298313 private Presence presence = Presence .REQUIRED ;
314+ private PrimitiveValue deprecated = null ;
299315 private ByteOrder byteOrder = ByteOrder .LITTLE_ENDIAN ;
300316 private PrimitiveValue minValue = null ;
301317 private PrimitiveValue maxValue = null ;
@@ -330,6 +346,18 @@ public Builder presence(final Presence presence)
330346 return this ;
331347 }
332348
349+ /**
350+ * Deprecated for the Encoding.
351+ *
352+ * @param deprecated for the Encoding.
353+ * @return this for a fluent API.
354+ */
355+ public Builder deprecated (final PrimitiveValue deprecated )
356+ {
357+ this .deprecated = deprecated ;
358+ return this ;
359+ }
360+
333361 /**
334362 * ByteOrder for the Encoding.
335363 *
@@ -446,7 +474,9 @@ public Builder semanticType(final String semanticType)
446474 public Encoding build ()
447475 {
448476 return new Encoding (
449- presence , primitiveType ,
477+ presence ,
478+ deprecated ,
479+ primitiveType ,
450480 byteOrder ,
451481 minValue ,
452482 maxValue ,
0 commit comments