Feature/issue 241 java core

@ajres can you take a look?