https://github.com/arangodb/java-velocypack
https://github.com/arangodb/java-velocypack
arangodb java velocypack vpack
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/arangodb/java-velocypack
- Owner: arangodb
- License: apache-2.0
- Created: 2017-03-16T13:00:51.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2024-12-19T10:28:18.000Z (6 months ago)
- Last Synced: 2025-03-30T06:05:35.018Z (3 months ago)
- Topics: arangodb, java, velocypack, vpack
- Language: Java
- Size: 1.37 MB
- Stars: 17
- Watchers: 43
- Forks: 11
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: ChangeLog.md
- License: LICENSE
Awesome Lists containing this project
README

# ArangoDB VelocyPack Java
[](https://maven-badges.herokuapp.com/maven-central/com.arangodb/velocypack)
[](https://dl.circleci.com/status-badge/redirect/gh/arangodb/java-velocypack/tree/main)Java implementation for [VelocyPack](https://github.com/arangodb/velocypack).
## Maven
To add the dependency to your project with maven, add the following code to your pom.xml:
```XML
com.arangodb
velocypack
x.y.z
```
## Compile
```
mvn clean install -DskipTests=true -Dgpg.skip=true -Dmaven.javadoc.skip=true -B
```# Usage
## build VelocyPack - Object
```Java
VPackBuilder builder = new VPackBuilder();
builder.add(ValueType.OBJECT); // object start
builder.add("foo", "bar"); // add field "foo" with value "bar"
builder.close(); // object endVPackSlice slice = builder.slice(); // create slice
```## working with VPackSlice - Object
```Java
VPackSlice slice = ...
int size = slice.size(); // number of fields
VPackSlice foo = slice.get("foo"); // get field "foo"
String value = foo.getAsString(); // get value from "foo"// iterate over the fields
for (final Iterator> iterator = slice.objectIterator(); iterator.hasNext();) {
Entry field = iterator.next();
...
}
```## build VelocyPack - Array
```Java
VPackBuilder builder = new VPackBuilder();
builder.add(ValueType.ARRAY); // array start
builder.add(1); // add value 1
builder.add(2); // add value 2
builder.add(3); // add value 3
builder.close(); // array endVPackSlice slice = builder.slice(); // create slice
```## working with VPackSlice - Array
```Java
VPackSlice slice = ...
int size = slice.size(); // number of values// iterate over values
for (int i = 0; i < slice.size(); i++) {
VPackSlice value = slice.get(i);
...
}// iterate over values with Iterator
for (final Iterator iterator = slice.arrayIterator(); iterator.hasNext();) {
VPackSlice value = iterator.next();
...
}
```## build VelocyPack - nested Objects
```Java
VPackBuilder builder = new VPackBuilder();
builder.add(ValueType.OBJECT); // object start
builder.add("foo", ValueType.OBJECT); // add object in field "foo"
builder.add("bar", 1); // add field "bar" with value 1 to object "foo"
builder.close(); // object "foo" end
builder.close(); // object endVPackSlice slice = builder.slice(); // create slice
```# Learn more
- [ArangoDB](https://www.arangodb.com/)
- [ChangeLog](ChangeLog.md)
- [JavaDoc](http://arangodb.github.io/java-velocypack/)