summaryrefslogtreecommitdiffstats
path: root/vpp-api/java/jvpp
AgeCommit message (Collapse)AuthorFilesLines
2016-11-30VPP-530: adapt jvpp generation for VPP API splittingMarek Gradzki1-25/+46
Now jvpp uses *.json instead of *.py api representation. Multiple *.json files are supported. Change-Id: I89fa556c7d2a35d42833f2faaa28398ebd2ed012 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-11-17VPP-534 Remove references to DTOs created in JVppMaros Marsalek2-0/+6
JVM objects allocated from a native thread need to be freed, they are not subject to GC. Change-Id: If1e140d2ceaec93631735ae7665f45db5aacf7cf Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-07Fix longArray type in JVPP generatorMaros Marsalek1-2/+2
Change-Id: I0319b45d2e070ee2e20dcf900477fdaadd072aef Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-11-03Remove unused jvpp dependency on plugins' control_pingMarek Gradzki2-8/+3
Change-Id: I6ebb69443e79e60c7ce6afded6a2d3af85048e6e Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-10-31VPP-120: add custom types support to jvppMarek Gradzki6-337/+647
Generates java classes based on typeonly definitions (hashcode, equals and toString methods are also included). Adds JNI handling for request and reply messages (also arrays of custom types). Change-Id: I16f1cea17899704426aa083fad1cb800a8d115df Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-10-25Improve equals generation for jvpp DTOsMarek Gradzki1-6/+7
Variable 'other' is no longer defined in equals method of DTOs without defined fileds. Fixes dead local store coverity issues. Change-Id: I69eddf2b4b3f433149ff4d49e49c46515572d61a Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-10-25Improve JNI code generation (array truncation)Marek Gradzki1-9/+14
Fixes DEADCODE coverity issue: size_t max_size = 0; if (max_size != 0 && ...) Change-Id: I0e3ea4e4ddddb476519490c6f00208379089397c Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-10-12VPP-362 Implement dumping of LISP adjacenciesFilip Tehlar1-1/+2
Change-Id: Ieea56f3bf9e749878d9f2b35d39d9f7a9cdabde4 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-09-30VPP-120: include custom types to Python representation of vpe.apiMarek Gradzki1-1/+1
Change-Id: Ide97a8bf55d3baf41a1e86af2c67c6b7b26b657a Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-09-29VPP-378: rename jvpp package to the same as groupId of deployed jarsMarek Gradzki4-21/+21
Related changes: - NSH: https://gerrit.fd.io/r/#/c/3181/ - Honeycomb: https://gerrit.fd.io/r/#/c/3182 Change-Id: Ifdd6b8b575916fdf99794618dbe604c2e17e8e82 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-09-20VPP-348 Return empty DumpReply instead of nullMaros Marsalek1-14/+16
Change-Id: If44f8d37649e5a9d5033ec2c0ab7452397e22691 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-09-20VPP-413 DTOs generated by JVpp improvements:Maros Marsalek2-31/+162
- hashCode & equals - toString Change-Id: I5f8bc8868c216862a307dcc8f6b423f0ce29e7b5 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-08-16VPP-205: jvpp plugin support.Marek Gradzki40-2707/+468
Splits jvpp into two jars jvpp-registry.jar - base jvpp functionality jvpp-core.jar - Java wrapper for vpe.api Plugins can be generated the same way jvpp-core.jar is. Example (nsh): https://gerrit.fd.io/r/#/c/2118/ Change-Id: I2254f90b2c3e423563bb91bf70877979f1e90a7d Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-08-16Create python package for jvpp generation.Ed Warnicke10-36/+44
Change-Id: I2254f90b2c3e423563bb91bf70877979f1e86a6b Signed-off-by: Ed Warnicke <eaw@cisco.com> Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-08-03VPP-233: disallow array[0] in reply messagesMarek Gradzki1-0/+5
- updates jvpp generator to raise exception if array[0] is present in reply/detail/counter message - fixes vpe.api reply/detail/counter messages that use incorrect variable array syntax. Additional info: Variable arrays in reply/detail/counter messages needs to have lenght defined in other variable within the message. The other variable can have any name, so it is impossible to generate Java/Python code handling. New syntax introduced by https://gerrit.fd.io/r/#/c/1617/ fixes the problem: u32 some_var; XX array[some_var]; Change-Id: I0af50f1ef1d94d95b56d9326d4e944e72b4edcdd Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-08-02VPP-229: fix NPE in JNI array handlingMarek Gradzki1-4/+4
Change-Id: Ieb5182a7a3612e09bd2b28eb6a4abbdb4d29d34b Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-08-01Jvpp: add handling for mising unsigned array typesMarek Gradzki1-4/+34
Change-Id: I239082622ceabdd1d0a7b6b6489a2789096a01fc Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-07-30Addition of u16[] to JVPP generatorKeith Burns (alagalah)1-0/+15
Change-Id: I8d746cfae4d64ae200ff0053de23b80ee951c290 Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-07-11VPP-190: support variable length array syntax in request messagesMarek Gradzki1-2/+4
The information is aleardy stored in array.length field, but vpe.api syntax should be uniform. Change-Id: Id84cd95c088281609c70548346cf0e408a6f49ff Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-07-06VPP-184 - Bad type translation in jvppJan Srnicek1-2/+2
Change-Id: I6dda9eb8d58a2bc9a1e4d6636688dfa1f8bb88c6 Signed-off-by: Jan Srnicek <jan.srnicek@pantheon.tech>
2016-06-27Add support for classify table/session read to jvpp:Marek Gradzki1-23/+107
* provides length information for variable length arrays in classify table/sessione reply messages * provides jvpp example for reading classify tables/sessions Change-Id: I47f8fca5c849ec874d4e23f28177e310689db522 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-06-27More janitorial workDave Barach1-5/+5
Install vpp api header files in /usr/include/vpp-api, instead of /usr/include/api. Someone will eventually complain if we continue with the status quo. Generate /usr/bin/vpp_plugin_configure, to correctly configure standalone plugin compilation against header files installed from the dev package. If a plugin's CFLAGS don't precisely match the installed vpp engine binary, subtle misbehavior can and will occur. Example: the ip4/ip6 main_t structure size / member offsets depend on DPDK=[0|1]. Screw that one up, and your brand-new configurable ip feature will mysteriously fail to appear, even though the plugin loads perfectly. Change-Id: I20c97fe1042808a79935863209d995c31953b98c Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-24VPP-118: add support for variable length arrays to jvppMarek Gradzki2-4/+27
* extends VPP's message definition language with the following syntax: u32 count: u8 array[count]; which is traslated to: u32 count; u8 array[0]; but now, python API representation generated by vppapigen contains information about where the array length is stored. * modifies existing response messages to use the new syntax Change-Id: I68210bc7a3a755d03d067e9b79a567f40e2d31f3 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-06-09VPP-119: JVpp notificationsMaros Marsalek20-138/+757
- add notification DTOs to JVpp - add notification callbacks - add notification registry - provide/implement notification registry from future and callback facades Change-Id: I1060ef2ec8ba1eb2e8cff279c93b73aa7c9f9aee Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-06-09HONEYCOMB-67 Introduce exception handling into JVPPTibor Sirovatka22-127/+525
Send calls throws VppInvocationException on failure Failed requests (negative retval) reported over onError callback interface method Removed retval attributes from dto/xxxReply.java calls Change-Id: Ibd4e90c320d080e02d75b4bd056a7b11c8e37aa7 Signed-off-by: Tibor Sirovatka <tsirovat@cisco.com>
2016-06-08Increase jvpp connection timeoutMaros Marsalek1-2/+2
Change-Id: I4d52c113336deac80dfcbad91b21a7a70eea2213 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-06-07Add u32[] type handling in reply messages to jvppMarek Gradzki1-3/+16
Change-Id: I9fd0cd49e4636d5d8978567fa914487785035c8a Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-31Fix u16 type handling in jvppMarek Gradzki3-4/+133
Change-Id: I6e5ed2562c65dde6c9f6f085c8b9d40f80684894 Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-24VPP-86: fix array copy in generated JNI codeMarek Gradzki4-22/+169
Change-Id: Ic67b3c0623d98c5ee3f1ffa1e1bd9cfb96b233bd Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-23Changed JVPP interface for construction and connectivityTibor Sirovatka10-36/+77
Simplified construction, autoconnected; possible connect/close See updated sample test cases with changed interface usage Change-Id: Ib53e855880bc414868aa2b9bb8f5df086917e375 Signed-off-by: Tibor Sirovatka <tsirovat@cisco.com>
2016-05-12JVPP - null checks changed to Objects.requireNonNull usageTibor Sirovatka5-35/+20
Review changes incorporated Change-Id: Ia04b62144a0d3643095b518db538c7eb5137c048 Signed-off-by: Tibor Sirovatka <tsirovat@cisco.com>
2016-05-04HONEYCOMB-10: fix issues with FindClass in multithreaded environmentsMarek Gradzki2-25/+70
Added jclass reference caching and updated JNI version to 1.8 Change-Id: Ie8dbbd4b91b90bf9e4e9a6148313e46056b0d67e Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
2016-05-02HONEYCOMB-10: JVpp documentationMaros Marsalek2-0/+214
Change-Id: Ibca8fc8c1962ca36d91898c1523afb2df6dfdc49 Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-05-02HONEYCOMB-10: Add specific methods for each request to Future facadeMaros Marsalek4-21/+116
These specific methods remove the need for casting on client side code while using generic send method Change-Id: Ic0240359333831b676a7d205f63ac1c3f3f8af4c Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
2016-05-02HONEYCOMB-10: jVpp - the new java API. C code and jar file generationMarek Gradzki10-30/+929
Added comments generation for C and Java files. Change-Id: Ifb670a5592eb871bfe68804f0a8d8f9b5b14f00a Signed-off-by: Marek Gradzki <mgradzki@cisco.com> Signed-off-by: Ed Warnicke <eaw@cisco.com>
2016-05-02HONEYCOMB-10: jVpp - the new java API. Java code generationMaros Marsalek19-0/+1752
The old japi has two main drawbacks: * it is not fully generated (requres manual coding for every new api call that returns data other thanstatus code) * it is not asynchronous from Java perspective (requires active wait loops - big overhead due to JNI boundary being crossed lots of times). The new api is lightweight (fully generated except for connect, disconenct and ping) and truly asynchronous (uses callbacks, utilities that offer java.util.concurrent.Future interface are also provided). Change-Id: I531080ef651e8a74f19210490c71d161221ab600 Signed-off-by: Marek Gradzki <mgradzki@cisco.com> Signed-off-by: Maros Marsalek <mmarsale@cisco.com> Signed-off-by: Ed Warnicke <eaw@cisco.com>