Skip to content

Commit f0af6ad

Browse files
author
mpv1989
committed
Add ArangoDBVersion.getLicense()
1 parent 88ca3c2 commit f0af6ad

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

src/main/java/com/arangodb/entity/ArangoDBVersion.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,13 @@
2828
*/
2929
public class ArangoDBVersion {
3030

31+
public enum License {
32+
ENTERPRISE, COMMUNITY
33+
}
34+
3135
private String server;
3236
private String version;
37+
private License license;
3338

3439
public ArangoDBVersion() {
3540
super();
@@ -50,4 +55,11 @@ public String getVersion() {
5055
return version;
5156
}
5257

58+
/**
59+
* @return the license
60+
*/
61+
public License getLicense() {
62+
return license;
63+
}
64+
5365
}

src/main/java/com/arangodb/internal/velocypack/VPackDeserializers.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,8 @@
2828
import org.slf4j.Logger;
2929
import org.slf4j.LoggerFactory;
3030

31+
import com.arangodb.entity.ArangoDBVersion;
32+
import com.arangodb.entity.ArangoDBVersion.License;
3133
import com.arangodb.entity.BaseDocument;
3234
import com.arangodb.entity.BaseEdgeDocument;
3335
import com.arangodb.entity.CollectionStatus;
@@ -130,4 +132,14 @@ public LogLevel deserialize(
130132
return LogLevel.fromLevel(vpack.getAsInt());
131133
}
132134
};
135+
136+
public static final VPackDeserializer<ArangoDBVersion.License> LICENSE = new VPackDeserializer<ArangoDBVersion.License>() {
137+
@Override
138+
public License deserialize(
139+
final VPackSlice parent,
140+
final VPackSlice vpack,
141+
final VPackDeserializationContext context) throws VPackException {
142+
return License.valueOf(vpack.getAsString().toUpperCase());
143+
}
144+
};
133145
}

src/main/java/com/arangodb/internal/velocypack/VPackDriverModule.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@
2323
import java.lang.reflect.Field;
2424
import java.util.Date;
2525

26+
import com.arangodb.entity.ArangoDBVersion;
2627
import com.arangodb.entity.BaseDocument;
2728
import com.arangodb.entity.BaseEdgeDocument;
2829
import com.arangodb.entity.CollectionStatus;
@@ -73,6 +74,7 @@ public String translateName(final Field field) {
7374
context.registerDeserializer(BaseEdgeDocument.class, VPackDeserializers.BASE_EDGE_DOCUMENT);
7475
context.registerDeserializer(QueryEntity.PROPERTY_STARTED, Date.class, VPackDeserializers.DATE_STRING);
7576
context.registerDeserializer(LogLevel.class, VPackDeserializers.LOG_LEVEL);
77+
context.registerDeserializer(ArangoDBVersion.License.class, VPackDeserializers.LICENSE);
7678
}
7779

7880
@Override

0 commit comments

Comments
 (0)