Skip to content

codejuicer/POxOSerializer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 

Repository files navigation

POxOSerializer

POxOSerializer is a fast and efficient cross-language serializer for POJO and POCO classes. The goal is to allow communication between software written in java and c#. Using this serializer you can serialize/deserialize any class that is composed by primitive types, strings, lists and maps. You can write your classes in java and use the java2csharp maven plugin (https://github.com/codejuicer/java2csharp) to generate c# equivalent classes. List (IList) and Map (IDictionary) are implemented respectively with ArrayList (List) and HashMap (Dictionary) in Java (C#). The POxOSerializer has an easy to use API with only serialize and deserialize methods.

It is not thread safe and it improve his performance along the time.

About the binary encoder/decoder algorithms we reuse Kryo code by Nathan Sweet (https://github.com/EsotericSoftware/kryo).

Types supported

JavaC#
byteSByte
ByteSByte
charChar
CharacterChar
shortInt16
ShortInt16
intInt32
IntegerInt32
longInt64
LongInt64
doubleDouble
DoubleDouble
floatSingle(float)
FloatSingle(float)
booleanBoolean
BooleanBoolean
StringString
DateDateTime
LocalDateNone
LocalTimeNone
LocalDateTimeNone
ZonedDateTimeNone
enumenum
ListIList
MapIDictionary

Java Installation

POxOSerializer bundle is available on the releases page and at [Maven Central] (http://search.maven.org/#browse%7C2107995541).

Java Integration with Maven

To use the official release of POxOSerializer, please use the following snippet in your pom.xml

    <dependency>
		<groupId>org.codejuicer</groupId>
		<artifactId>poxo-serializer</artifactId>
		<version>1.0.4</version>
	</dependency>

C# Installation

POxOSerializer library for c# is available on the releases page