Skip to content

Commit e873ccb

Browse files
author
Mark
committed
added configuration for custom annotations within VPack
1 parent a8541ce commit e873ccb

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

src/main/java/com/arangodb/ArangoDBAsync.java

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222

2323
import java.io.IOException;
2424
import java.io.InputStream;
25+
import java.lang.annotation.Annotation;
2526
import java.util.Collection;
2627
import java.util.Properties;
2728
import java.util.concurrent.CompletableFuture;
@@ -49,6 +50,8 @@
4950
import com.arangodb.model.UserCreateOptions;
5051
import com.arangodb.model.UserUpdateOptions;
5152
import com.arangodb.velocypack.VPack;
53+
import com.arangodb.velocypack.VPackAnnotationFieldFilter;
54+
import com.arangodb.velocypack.VPackAnnotationFieldNaming;
5255
import com.arangodb.velocypack.VPackDeserializer;
5356
import com.arangodb.velocypack.VPackInstanceCreator;
5457
import com.arangodb.velocypack.VPackJsonDeserializer;
@@ -211,6 +214,20 @@ public <T> Builder registerJsonSerializer(
211214
return this;
212215
}
213216

217+
public <T extends Annotation> Builder annotationFieldFilter(
218+
final Class<T> type,
219+
final VPackAnnotationFieldFilter<T> fieldFilter) {
220+
vpackBuilder.annotationFieldFilter(type, fieldFilter);
221+
return this;
222+
}
223+
224+
public <T extends Annotation> Builder annotationFieldNaming(
225+
final Class<T> type,
226+
final VPackAnnotationFieldNaming<T> fieldNaming) {
227+
vpackBuilder.annotationFieldNaming(type, fieldNaming);
228+
return this;
229+
}
230+
214231
public ArangoDBAsync build() {
215232
return new ArangoDBAsync(asyncBuilder(), vpackBuilder.build(),
216233
vpackBuilder.serializeNullValues(true).build(), vpackParser, collectionCache, syncBuilder());

0 commit comments

Comments
 (0)