Skip to content
This repository has been archived by the owner on Jan 22, 2019. It is now read-only.

Latest commit

 

History

History
66 lines (42 loc) · 2.65 KB

README.md

File metadata and controls

66 lines (42 loc) · 2.65 KB

IMPORTANT!

This project will be moved under https://github.com/FasterXML/jackson-datatype-collections soon, to simplify management, release process.


Project to build Jackson (http://jackson.codehaus.org) module (jar) to support JSON serialization and deserialization of High-Performance Primitive Collections (see http://labs.carrotsearch.com/hppc.html) datatypes.

Status

Build Status Maven Central Javadoc

Currently (2.5) following things are supported:

  • Serializing of all 'XxxContainer' (IntContainer, IntSet, IntArrayList, LongContainer, DoubleContainer etc) types
  • Deserialization of all int valued container types

and following are not yet supported:

  • Deserialization for other primitive types
  • Handling of 'map' types (ie. 'XYAssociateContainer' implementations)

plan is to support full fidelity of Jackson annotation configurability; meaning that all generic types (ones with 'Object' in name, and with generic type parameter) could be supported; as well as use of included type information.

However, due to on-going competing work, at this point (May 2015) the best way to get additional coverage is to contribute code. Jackson team is happy to merge code contributions, and help with implementation details.

License

Apache License 2.0

Usage

JDK version

Starting with version 2.6 of the module, minimum JDK is 1.7. This is because HPPC 0.7.1 requires it. Jackson core components only require 1.6.

Maven dependency

To use module on Maven-based projects, use following dependency:

<dependency>
  <groupId>com.fasterxml.jackson.datatype</groupId>
  <artifactId>jackson-datatype-hppc</artifactId>
  <version>2.5.3</version>
</dependency>

(or whatever version is most up-to-date at the moment)

Registering module

To use the the Module in Jackson, simply register it with the ObjectMapper instance: Modules are registered through ObjectMapper, like so:

ObjectMapper mapper = new ObjectMapper();
mapper.register(new HppcModule());

after which you can read JSON as HPCC types, as well as write HPPC types as JSON. It's really that simple; convenient and efficient.