Java Producer Provider

First pass at adding java producer functionality.  

A lot still needs to be cleaned up
This seems to pass result by reference, I couldn't quote duplicate this format with the java version so I had to insert this ugly if stmt.  Open to ideas...