Skip to content

Commit 91503b9

Browse files
committed
[DE-216] deprecated VPack serialization in favor of Jackson API
1 parent 774c180 commit 91503b9

File tree

5 files changed

+94
-7
lines changed

5 files changed

+94
-7
lines changed

src/main/java/com/arangodb/ArangoDB.java

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,7 +348,10 @@ public Builder responseQueueTimeSamples(final Integer responseQueueTimeSamples)
348348
* @param clazz the type the serializer should be registered for
349349
* @param serializer serializer to register
350350
* @return {@link ArangoDB.Builder}
351+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
352+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
351353
*/
354+
@Deprecated
352355
public <T> Builder registerSerializer(final Class<T> clazz, final VPackSerializer<T> serializer) {
353356
vpackBuilder.registerSerializer(clazz, serializer);
354357
return this;
@@ -364,7 +367,10 @@ public <T> Builder registerSerializer(final Class<T> clazz, final VPackSerialize
364367
* @param clazz the type of the enclosing class
365368
* @param serializer serializer to register
366369
* @return {@link ArangoDB.Builder}
370+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
371+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
367372
*/
373+
@Deprecated
368374
public <T> Builder registerEnclosingSerializer(final Class<T> clazz, final VPackSerializer<T> serializer) {
369375
vpackBuilder.registerEnclosingSerializer(clazz, serializer);
370376
return this;
@@ -381,7 +387,10 @@ public <T> Builder registerEnclosingSerializer(final Class<T> clazz, final VPack
381387
* @param clazz the type the serializer should be registered for
382388
* @param deserializer
383389
* @return {@link ArangoDB.Builder}
390+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
391+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
384392
*/
393+
@Deprecated
385394
public <T> Builder registerDeserializer(final Class<T> clazz, final VPackDeserializer<T> deserializer) {
386395
vpackBuilder.registerDeserializer(clazz, deserializer);
387396
return this;
@@ -398,7 +407,10 @@ public <T> Builder registerDeserializer(final Class<T> clazz, final VPackDeseria
398407
* @param clazz the type the instance creator should be registered for
399408
* @param creator
400409
* @return {@link ArangoDB.Builder}
410+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
411+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
401412
*/
413+
@Deprecated
402414
public <T> Builder registerInstanceCreator(final Class<T> clazz, final VPackInstanceCreator<T> creator) {
403415
vpackBuilder.registerInstanceCreator(clazz, creator);
404416
return this;
@@ -415,7 +427,10 @@ public <T> Builder registerInstanceCreator(final Class<T> clazz, final VPackInst
415427
* @param type the type the serializer should be registered for
416428
* @param deserializer
417429
* @return {@link ArangoDB.Builder}
430+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
431+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
418432
*/
433+
@Deprecated
419434
public Builder registerJsonDeserializer(final ValueType type, final VPackJsonDeserializer deserializer) {
420435
vpackParserBuilder.registerDeserializer(type, deserializer);
421436
return this;
@@ -433,7 +448,10 @@ public Builder registerJsonDeserializer(final ValueType type, final VPackJsonDes
433448
* @param type the type the serializer should be registered for
434449
* @param deserializer
435450
* @return {@link ArangoDB.Builder}
451+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
452+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
436453
*/
454+
@Deprecated
437455
public Builder registerJsonDeserializer(
438456
final String attribute,
439457
final ValueType type,
@@ -453,7 +471,10 @@ public Builder registerJsonDeserializer(
453471
* @param clazz the type the serializer should be registered for
454472
* @param serializer
455473
* @return {@link ArangoDB.Builder}
474+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
475+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
456476
*/
477+
@Deprecated
457478
public <T> Builder registerJsonSerializer(final Class<T> clazz, final VPackJsonSerializer<T> serializer) {
458479
vpackParserBuilder.registerSerializer(clazz, serializer);
459480
return this;
@@ -471,7 +492,10 @@ public <T> Builder registerJsonSerializer(final Class<T> clazz, final VPackJsonS
471492
* @param clazz the type the serializer should be registered for
472493
* @param serializer
473494
* @return {@link ArangoDB.Builder}
495+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
496+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
474497
*/
498+
@Deprecated
475499
public <T> Builder registerJsonSerializer(
476500
final String attribute,
477501
final Class<T> clazz,
@@ -491,7 +515,10 @@ public <T> Builder registerJsonSerializer(
491515
* @param type the type the serializer should be registered for
492516
* @param fieldFilter
493517
* @return {@link ArangoDB.Builder}
518+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
519+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
494520
*/
521+
@Deprecated
495522
public <A extends Annotation> Builder annotationFieldFilter(
496523
final Class<A> type,
497524
final VPackAnnotationFieldFilter<A> fieldFilter) {
@@ -510,7 +537,10 @@ public <A extends Annotation> Builder annotationFieldFilter(
510537
* @param type the type the serializer should be registered for
511538
* @param fieldNaming
512539
* @return {@link ArangoDB.Builder}
540+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
541+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
513542
*/
543+
@Deprecated
514544
public <A extends Annotation> Builder annotationFieldNaming(
515545
final Class<A> type,
516546
final VPackAnnotationFieldNaming<A> fieldNaming) {
@@ -527,7 +557,10 @@ public <A extends Annotation> Builder annotationFieldNaming(
527557
*
528558
* @param module module to register
529559
* @return {@link ArangoDB.Builder}
560+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom modules.
561+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#jackson-datatype-and-language-modules">Reference Documentation</a>
530562
*/
563+
@Deprecated
531564
public Builder registerModule(final VPackModule module) {
532565
vpackBuilder.registerModule(module);
533566
return this;
@@ -542,7 +575,10 @@ public Builder registerModule(final VPackModule module) {
542575
*
543576
* @param modules modules to register
544577
* @return {@link ArangoDB.Builder}
578+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom modules.
579+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#jackson-datatype-and-language-modules">Reference Documentation</a>
545580
*/
581+
@Deprecated
546582
public Builder registerModules(final VPackModule... modules) {
547583
vpackBuilder.registerModules(modules);
548584
return this;
@@ -557,7 +593,10 @@ public Builder registerModules(final VPackModule... modules) {
557593
*
558594
* @param module module to register
559595
* @return {@link ArangoDB.Builder}
596+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom modules.
597+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#jackson-datatype-and-language-modules">Reference Documentation</a>
560598
*/
599+
@Deprecated
561600
public Builder registerJsonModule(final VPackParserModule module) {
562601
vpackParserBuilder.registerModule(module);
563602
return this;
@@ -572,7 +611,10 @@ public Builder registerJsonModule(final VPackParserModule module) {
572611
*
573612
* @param modules modules to register
574613
* @return {@link ArangoDB.Builder}
614+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom modules.
615+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#jackson-datatype-and-language-modules">Reference Documentation</a>
575616
*/
617+
@Deprecated
576618
public Builder registerJsonModules(final VPackParserModule... modules) {
577619
vpackParserBuilder.registerModules(modules);
578620
return this;
@@ -618,7 +660,10 @@ public Builder setDeserializer(final ArangoDeserializer deserializer) {
618660
*
619661
* @param serialization custom serializer/deserializer
620662
* @return {@link ArangoDB.Builder}
663+
* @deprecated Use {@link com.arangodb.mapping.ArangoJack} instead and register custom serializers and deserializers by implementing {@link com.fasterxml.jackson.databind.JsonSerializer} and {@link com.fasterxml.jackson.databind.JsonDeserializer}.
664+
* @see <a href="https://www.arangodb.com/docs/stable/drivers/java-reference-serialization.html#custom-serializer">Reference Documentation</a>
621665
*/
666+
@Deprecated
622667
public Builder serializer(final ArangoSerialization serialization) {
623668
setSerializer(serialization);
624669
return this;

src/main/java/com/arangodb/ArangoRoute.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
package com.arangodb;
2222

23-
import com.arangodb.velocypack.VPackSlice;
2423
import com.arangodb.velocystream.Response;
2524

2625
/**
@@ -58,7 +57,7 @@ public interface ArangoRoute extends ArangoSerializationAccessor {
5857
ArangoRoute withQueryParam(String key, Object value);
5958

6059
/**
61-
* The response body. The body will be serialized to {@link VPackSlice}.
60+
* The response body. The body will be serialized to {@link com.arangodb.velocypack.VPackSlice}.
6261
*
6362
* @param body The request body
6463
* @return {@link ArangoRoute}

src/main/java/com/arangodb/ArangoSerializationAccessor.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,22 +22,21 @@
2222

2323
import com.arangodb.internal.util.ArangoSerializationFactory.Serializer;
2424
import com.arangodb.util.ArangoSerialization;
25-
import com.arangodb.velocypack.VPackSlice;
2625

2726
/**
2827
* @author Mark Vollmary
2928
*/
3029
public interface ArangoSerializationAccessor {
3130

3231
/**
33-
* Returns driver internal serialization API for serializing and deserializing Java POJOs to/from {@link VPackSlice}
32+
* Returns driver internal serialization API for serializing and deserializing Java POJOs to/from {@link com.arangodb.velocypack.VPackSlice}
3433
*
3534
* @return ArangoSerialization
3635
*/
3736
ArangoSerialization util();
3837

3938
/**
40-
* Returns serialization API for serializing and deserializing Java POJOs to/from {@link VPackSlice} by the given
39+
* Returns serialization API for serializing and deserializing Java POJOs to/from {@link com.arangodb.velocypack.VPackSlice} by the given
4140
* type
4241
*
4342
* @param serializer type of serializer

0 commit comments

Comments
 (0)