Metadata-Version: 2.0
Name: javaobj-py3
Version: 0.1.3
Summary: Module for serializing and de-serializing Java objects.
Home-page: https://github.com/tcalmant/python-javaobj
Author: Thomas Calmant
Author-email: thomas.calmant@gmail.com
License: Apache License 2.0
Keywords: python java marshalling serialization
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Topic :: Software Development :: Libraries :: Python Modules

javaobj-py3
###########

python-javaobj is a python library that provides functions for reading and
writing (writing is WIP currently) Java objects serialized or will be
deserialized by _ObjectOutputStream_. This form of object representation is a
standard data interchange format in Java world.

javaobj module exposes an API familiar to users of the standard library
marshal, pickle and json modules.

About this repository
=====================

This project is a fork of python-javaobj by Volodymyr Buell, originally from
`Google Code <http://code.google.com/p/python-javaobj/>`_ and now hosted on
`GitHub <https://github.com/vbuell/python-javaobj>`_.

This fork intends to work both on Python 2.7 and Python 3.

Features
========

* Java object instance unmarshaling
* Java classes unmarshaling
* Primitive values unmarshaling
* Automatic conversion of Java Collections to python ones
  (_HashMap_ => dict, _ArrayList_ => list, etc)

Requirements
============

* Python >= 2.7 or Python >= 3.2
* Maven 2+ (for building test data of serialized objects.
  You can skip it if you do not plan to run tests.py)

Usage
=====

Unmarshalling of Java serialised object:

.. code-block:: python

    import javaobj

    jobj = self.read_file("obj5.ser")
    pobj = javaobj.loads(jobj)
    print(pobj)

Or, you can use Unmarshaller object directly:

.. code-block:: python

    import javaobj

    marshaller = javaobj.JavaObjectUnmarshaller(open("sunExample.ser"))
    pobj = marshaller.readObject()

    self.assertEqual(pobj.value, 17)
    self.assertTrue(pobj.next)

    pobj = marshaller.readObject()


