com.datastax.driver.dse.graph.GraphSON2JacksonModule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of dse-java-driver-core Show documentation
Show all versions of dse-java-driver-core Show documentation
A driver for DataStax Enterprise (DSE)
and Apache Cassandra 1.2+ clusters that works exclusively with the
Cassandra Query Language version 3 (CQL3) and Cassandra's binary protocol,
supporting DSE-specific features such as geospatial types, DSE Graph and DSE authentication.
/*
* Copyright (C) 2012-2017 DataStax Inc.
*
* This software can be used solely with DataStax Enterprise. Please consult the license at
* http://www.datastax.com/terms/datastax-dse-driver-license-terms
*/
package com.datastax.driver.dse.graph;
import com.fasterxml.jackson.databind.module.SimpleModule;
import java.util.Map;
/**
* A {@link SimpleModule} extension that does the necessary work to make the automatic typed deserialization
* without full canonical class names work.
*
* Users of custom modules with the GraphSONMapper that want their objects to be deserialized automatically by the
* mapper, must extend this class with their module. It is the only required step.
*
* Using this basis module allows the serialization and deserialization of typed objects without having the whole
* canonical name of the serialized classes included in the Json payload. This is also necessary because Java
* does not provide an agnostic way to search in a classpath a find a class by its simple name. Although that could
* be done with an external library, later if we deem it necessary.
*/
abstract class GraphSON2JacksonModule extends SimpleModule {
public GraphSON2JacksonModule(final String name) {
super(name);
}
public abstract Map, String> getTypeDefinitions();
public abstract String getTypeNamespace();
}