Proton Java JNI binding

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1421251 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA : Initial commit of cmake / swig for JNI binding

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1421258 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA : added simple JNI implementations

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1421436 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: cmake java improvements

1) Support older versions of cmake (such as v2.6)
2) As swig does not create its outputdir, create it before performing the swig-jni step

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1425026 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: Extend cmake build system to compile/jar the proton-API, and compile/jar proton-JNI (which comprises of the hand rolled thunking layer + the swig generated binding code).

* Make targets are proton-api and proton-jni (or simply all).
* Jars produced are proton-api-n.n.jar and proton-jni-n.n.jar

If you are using cmake < 2.8.6, the more functional local modules UseJava/FindJava will be used in
preference to those from your cmake install.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1426246 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: Proton system tests

* Added first simple java system test working for both stacks.
* Added factory to create proton objects (located via ServiceLoader).
* Added factory impl to both stacks.
* Removed JNI_LIBRARIES from swig_link_libraries command.  This was giving unwanted dependencies on libjawt, libmawt.so etc
* Used set_target_properties in bindings/java to work around difference in behaviour between cmake 2.6 and 2.8 re. lib prefix on .so's.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1428936 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: got skeleton Java system tests working from the new top-level pom.xml, and renamed some artifactIds for consistency.
Also removed redundant versions and groupIds from pom.xml files.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1429820 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: Bug fix: fix relative path for the proton-system-tests pom.xml.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1429883 13f79535-47bb-0310-9956-ffa450edef68
Merged latest from trunk (at rev 1429858) to this branch jni-binding (which was created from 1421250)
with command:

svn merge -r1421250:HEAD https://svn.apache.org/repos/asf/qpid/proton/trunk
--- Merging r1421251 through r1429858 into '.':




git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1430167 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: Changes to proton-c JNI layer to comply with new proton-api resulting from
merge from trunk by last commit (rev 1430167).

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1430188 13f79535-47bb-0310-9956-ffa450edef68
PROTON-191: First version of Proton API Reconciliation tool. Simple standalone tool to reconcile the public functions of the Proton-C API with the methods of the Proton-J API exposed via its interface.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1431345 13f79535-47bb-0310-9956-ffa450edef68
NO-JIRA: added missing licenses

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1431947 13f79535-47bb-0310-9956-ffa450edef68
PROTON-191: modified reconciliation tool to 1) use separate packages for API interfaces and implementating classes - the latter is where the annotations now live 2) tool to accept annotation classname as parameter 3) Resolve TODO in package searcher, restructure testdata

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1433539 13f79535-47bb-0310-9956-ffa450edef68
PROTON-191: Add annotations to the JNI impl indicating their c function equivalents.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1433540 13f79535-47bb-0310-9956-ffa450edef68
PROTON-191: API reconciliation tool tidy-up - removed whitespace, added comments etc

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1433545 13f79535-47bb-0310-9956-ffa450edef68
PROTON-194: modify Maven set-up so that proton-j and proton-system-tests do not depend on top-level proton-project, thereby allowing these sub-projects to be independently checked out and built

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1434025 13f79535-47bb-0310-9956-ffa450edef68
PROTON-194: consolidated Python and Java system tests in a single Maven project called 'tests'.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1434699 13f79535-47bb-0310-9956-ffa450edef68
PROTON-194: correct path to proton-c-build-dir

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1435095 13f79535-47bb-0310-9956-ffa450edef68
PROTON-194: removed redundant debug setting from Maven compiler config (it's true by default), and added missing compiler config to api-reconciliation pom

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1435099 13f79535-47bb-0310-9956-ffa450edef68
Amended .gitignore

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/branches/jni-binding@1435100 13f79535-47bb-0310-9956-ffa450edef68