aboutsummaryrefslogtreecommitdiffstats
path: root/vpp-japi/japi
AgeCommit message (Collapse)AuthorFilesLines
2016-02-22Added MTU information to sw_interface_dumpPavel3-3/+7
Change-Id: Ie69837fd6903b715cb7b840b67c869a9b12c84a7 Signed-off-by: Pavel <pavel.kotucek@pantheon.tech>
2016-02-19Rebalance checkConnected()Robert Varga1-8/+9
AtomicBoolean forces the enclosed boolean to be cache-aligned, needlessly hitting a cacheline. Since we only flip state only once, when the connection is severed, we can turn this into a volatile boolean. Doing that is costing us a synchronized close(), but that is perfectly acceptable, as that is called only once. Change-Id: I76fda3d3f65a5f800e7d3970b0b8fe99fb3e8b6d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10Remove strcasecmp(3) declarationRobert Varga1-1/+1
This should be coming from string.h. Change-Id: Id88bb1d2a4681a9dcf6db9c7de2580a5219869d1 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10GetStringUTFChars() may failRobert Varga1-25/+41
GetStringUTFChars() can fail, returning NULL. Make sure we do not trip over it. Change-Id: I2d6b9c72c353c2423042fd035087f0d57fdc08ca Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10newIntArray() may failRobert Varga1-1/+4
Allocation of the integer array may fail, guard against NPE. Change-Id: I3e860153597638392c9b669a6ad586fd2e03a64d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-10Indent vppjni.c to be consistentRobert Varga1-775/+755
Pure cleanup of indentation and brace placement, so the file ends up being consisteny. Change-Id: Idd2f20deda486d16b455f3e13cacbc2f3baa50f1 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-09Modify hand-coded JNI function names to match refactoring ofDave Wallace1-19/+19
vppConn.java in commit #169 Change-Id: Id9feaebdce199f239741a10d31bf7aa473a62806 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2016-02-09Make cleanup_rx_thread staticRobert Varga1-1/+1
The symbol is not referenced outside of the source file, hide it from the world. Change-Id: Id5db73efff0767657ebc5a0b25dcccd2b85e354d Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-09Mark internal implementation functions as hiddenRobert Varga1-5/+5
Adding hidden attribute results in compilation failure if the symbol is not found when linking the .so. It should also lead to better performance, as it side-steps GOT. Change-Id: I7b6f39e663ca2b3e432669a3e2b36d7395f555b6 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-09Fixup symbol names in vpp-japiRobert Varga1-4/+4
There is skew between symbol names of vppjni_env.[ch], causing the library to fail to load. This patch fixes that up. Change-Id: I972e6d0ce72fd05ee3518e7161e20946ff3426ca Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-01Free the temporary vectorRobert Varga1-0/+2
vec_add1() seems to be allocating memory which we do not free. Correct that. Change-Id: I25dca1871121cdd11a218ff2289a3c51b42e843b Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-01Do not copy data twice in swInterfaceDump()Robert Varga1-4/+2
Instead of performing getting the elements, memcpy()ing them and the releasing, use GetByteArrayRegion(). Change-Id: I20ef181df214ac4fdcaff5a64b89ef4f879078f8 Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-01Refactor vpp-japiRobert Varga8-42/+180
vlib does not allow concurrent connections, hence make sure the Java API does not allow the user to instantiate them. Also hide native methods from direct user invocation behind defensive methods also detect if a particular connection has been terminated. Disconnect is hidden befind standard close() method, as specified by AutoCloseable. Change-Id: Ib5079200ae4216cad84358a2174a41e90271a30b Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-01Make public fields final where possibleRobert Varga7-90/+92
Class fields initialized via the constructor should be final. Also mark leaking byte[] instances with a FIXME. API users consider them immutable, but they are vulnerable to System.arrayCopy(). Also fixes constructor arguments so they do not use underscores, which is prohibited by Java 9. Change-Id: I393d55ed7234149cb3604bc92b2cb1d1207c55dc Signed-off-by: Robert Varga <nite@hq.sk>
2016-02-01Add a copyright headerRobert Varga1-0/+15
Change-Id: Ib543249b8de2b26b64de82c35f74422d10a5ee66 Signed-off-by: Robert Varga <nite@hq.sk>
2016-01-30Cache jclass/jmethodID/jfieldID referencesRobert Varga4-245/+281
This patch introduces an initialization framework, which tracks required references to Java classes and methods. It works by declaring classes and their constructor signatures, which are linked into a singly-linked list when the .so initializers are run. Once JNI_OnLoad() is invoked, this list is walked and all classes and their initializers are resolved. These are then used while the library remains loaded. Once JNI_OnUnload() is called, global references are released, so we can cleanly unload. The class declaration results in static utility objects being emitted in the scope of the declaration, hence to allocate an object or an array of objects is done via simple calls. Change-Id: I41984c13756339364dbcbf0144b947627e8e4fe1 Signed-off-by: Robert Varga <nite@hq.sk>
2016-01-20Rename vpe binary name to avoid collision with latexDamjan Marion1-1/+1
Change-Id: I34a46b9ebbc0e36486fbef528b34ea1c3be2e8be Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-01-04Warning be gone.Dave Wallace1-1/+1
Change-Id: I683298c9f1dbff4c1067fb3004b5554fdc8b4ee1 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2015-12-17Add ODL honeycomb VPP agent extensions to vppjapi jni java library.Dave Wallace8-69/+604
Change-Id: I084ffcf36fbac55c2862035d10b028e35e1e648d Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2015-12-15replacing all vec_sort() invocations to vec_sort_with_function()Matus Fabian1-2/+10
Change-Id: I05895827ed52be292112484cee7d0a2591b67335 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2015-12-13new version handlingDamjan Marion2-7/+7
Change-Id: I90983f3df94a3b28199908b29ffd8f827ab0c379 Signed-off-by: Damjan Marion <damarion@cisco.com>
2015-12-08Initial commit of vpp code.v1.0.0Ed Warnicke12-0/+3048
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17 Signed-off-by: Ed Warnicke <eaw@cisco.com>