Awesome
ArangoDB VelocyPack Java
Java implementation for VelocyPack.
Maven
To add the dependency to your project with maven, add the following code to your pom.xml:
<dependencies>
<dependency>
<groupId>com.arangodb</groupId>
<artifactId>velocypack</artifactId>
<version>x.y.z</version>
</dependency>
</dependencies>
Compile
mvn clean install -DskipTests=true -Dgpg.skip=true -Dmaven.javadoc.skip=true -B
Usage
build VelocyPack - Object
VPackBuilder builder = new VPackBuilder();
builder.add(ValueType.OBJECT); // object start
builder.add("foo", "bar"); // add field "foo" with value "bar"
builder.close(); // object end
VPackSlice slice = builder.slice(); // create slice
working with VPackSlice - Object
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<Entry<String, VPackSlice>> iterator = slice.objectIterator(); iterator.hasNext();) {
Entry<String, VPackSlice> field = iterator.next();
...
}
build VelocyPack - Array
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 end
VPackSlice slice = builder.slice(); // create slice
working with VPackSlice - Array
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<VPackSlice> iterator = slice.arrayIterator(); iterator.hasNext();) {
VPackSlice value = iterator.next();
...
}
build VelocyPack - nested Objects
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 end
VPackSlice slice = builder.slice(); // create slice