146 Commits

Author SHA1 Message Date
MohitMali
f7e4a5be6c Fix path of compiled so file 2023-03-03 18:23:08 +05:30
MohitMali
e14a12324e Removed wrapper.app from testing 2023-03-03 17:10:04 +05:30
MohitMali
49de5c457e Include new wrapper files in test CmakeLists file 2023-03-03 16:08:53 +05:30
Kelson
4b5cc44577
Merge pull request #23 from kiwix/adapt_wrapper
Adapt wrapper to new API of libzim/libkiwix
2023-02-09 17:28:25 +01:00
Matthieu Gautier
929ae6d1c3 Explicitly list the java files for what we need to generate header. 2023-02-09 14:59:09 +01:00
Matthieu Gautier
12a6898060 Rename back JNIKiwix.java_ to JNIKiwix.java 2023-02-03 15:52:20 +01:00
Matthieu Gautier
7c95917a52 Add bookmark wrapper. 2023-02-01 18:20:36 +01:00
Matthieu Gautier
06638d46b8 Remove thread lock.
This make the JNI wrapping *somehow* NOT threadsafe.

Few things are threadsafe "by nature":
- A lot of native method in libzim are threadsafe.
- Wrapping internal are threadsafe (shared_ptr).

What is not threadsafe is accessing the SAME java object from different
thread. But accessing the same wrapped cpp object using two different java
wrapper in two different thread is ok (assuming that the called cpp method
is threadsafe itself).
2023-01-24 17:11:27 +01:00
Matthieu Gautier
b2b7dad84f Add missing getDirectAccessInformation in libzim.Item. 2023-01-24 17:11:27 +01:00
Matthieu Gautier
150af85a7a All java class wrapping a native object must call dispose at destruction. 2023-01-24 17:11:27 +01:00
Matthieu Gautier
1dd170bd59 Add missing implementation of Searcher setNativeSearcherMulti 2023-01-24 17:11:27 +01:00
Matthieu Gautier
6fd7849241 Fix implementation of method in Archive.
A lot of methods are overloaded, so we must include the argument type
in the name.
2023-01-24 17:11:27 +01:00
Matthieu Gautier
775b55c3b0 Fix wrong implementation in Book.
As `update` is overloaded, the jni method name include the argument type.
And we have changed the type of one version of `update`, so we need
to change its name.
2023-01-24 17:11:27 +01:00
Matthieu Gautier
897c78a718 Add missing method in Book. 2023-01-24 17:11:27 +01:00
Matthieu Gautier
2ef64ac8b3 Use correct method in SearchIterator. 2023-01-24 17:11:27 +01:00
Matthieu Gautier
1c963273b7 Fix typos in Item.java.
The cpp method name is `getMimetype`, not `getMimeType`.
2023-01-24 17:11:27 +01:00
Matthieu Gautier
28f0acde24 Reorder methods' definitions.
For better comparaison with the generated header.
2023-01-24 17:11:27 +01:00
Matthieu Gautier
fe1de03b23 Intrudoce DISPOSE macro to implement the dispose method. 2023-01-24 17:11:27 +01:00
Matthieu Gautier
fbdea0dda2 Rename JNIKiwixServer to Server. 2023-01-24 15:07:49 +01:00
Matthieu Gautier
17b85bfff6 Remove some warning. 2023-01-18 19:23:33 +01:00
Matthieu Gautier
9426c6fcb8 Use Illustration api instead of deprecated favicon for Book 2023-01-18 19:23:16 +01:00
Matthieu Gautier
876d38b9f3 Introduce BUILD_WRAPPER macro 2023-01-18 19:21:35 +01:00
Matthieu Gautier
d63b84a5cc Repass on kiwix::Library wrapper 2023-01-18 17:12:22 +01:00
Matthieu Gautier
29518279dc Introduce macros.h to define common macro 2023-01-18 17:12:22 +01:00
Matthieu Gautier
edea648634 Introduce GETTER_METHOD in utils.h 2023-01-18 17:12:22 +01:00
Matthieu Gautier
ee5a6b3eeb Make METHOD macro not using libzim by default.
(Adapt only libzim part)
2023-01-18 17:12:22 +01:00
Matthieu Gautier
4e840ba5a9 Add compilation of libkiwix wrapper.
JNIKiwix.java is not compiled as it needs modules not found.
To be fixed.
2023-01-18 17:12:22 +01:00
Matthieu Gautier
0be73ef8e9 Remove wrapper around obsolete kiwix::Reader and kiwix::Searcher. 2023-01-18 17:12:22 +01:00
Matthieu Gautier
763731a5e1 Rename kiwixlib to libkiwix 2023-01-18 17:12:22 +01:00
Matthieu Gautier
4aa8eeedfb Wrap Archive::iterByFoo and Archive::findByFoo 2023-01-18 17:12:22 +01:00
Matthieu Gautier
3d2f3083b0 Wrap suggestion searcher. 2023-01-18 17:12:22 +01:00
Matthieu Gautier
f3ac28f56a Generate headers for all the *.java files. 2023-01-18 17:12:22 +01:00
Matthieu Gautier
9b971ce4dc Add wrapping around Search 2023-01-18 17:12:22 +01:00
Matthieu Gautier
7887202eb0 Better wrapping structure.
Avoid the Handle and directly use a shared_ptr.
This simplify a lot the wrapping code and potentially remove some bug.
2023-01-18 17:12:22 +01:00
Matthieu Gautier
030b2f95f5 [WIP] Add search wrapping 2023-01-18 17:12:22 +01:00
Matthieu Gautier
f9f64991cd Add a basic wrapper around libzim.
This validate the build system has we now have a compiling wrapper around
libzim.
2023-01-18 17:12:22 +01:00
Kelson
98388aa4e4
Merge pull request #22 from kiwix/adapt_buildsystem
New build System
2023-01-11 17:35:32 +01:00
Matthieu Gautier
c4b582c51b Adapt CI to new structure. 2022-12-21 16:01:02 +01:00
Matthieu Gautier
7de75101fb Adapt README.md and change build.sh into install_deps.sh 2022-12-21 16:01:02 +01:00
Matthieu Gautier
ba990be6c5 Add CI (github and codecov) from branch Issue#19 2022-12-21 16:01:02 +01:00
Matthieu Gautier
f7f6d5628d Adapt build system
- Build everything in buildDir instead of copy/generate things in src.
2022-12-21 16:01:02 +01:00
Matthieu Gautier
3b4ca8a3d2 Get build scripts from Issue#19 2022-12-20 11:56:35 +01:00
Matthieu Gautier
a3a7fa5193 Move things in src.
Let's be a bit more closer than `android-libkiwixbuild/app/src/main`
2022-12-20 11:55:34 +01:00
Matthieu Gautier
3e02f1733f Copy test from branch Issue#19
zim files has been changed but I don't know why.
Change came from commits 3cd8ed98 and 8bff08ca but it is not explain
what are the changes. @MohitMaliFtechiz ?
2022-12-20 11:53:08 +01:00
Matthieu Gautier
a0d95cb9c6 Move lib/src/main/java/org/kiwix/testing to lib/src/test 2022-12-20 11:52:11 +01:00
Matthieu Gautier
d5c9e46e2f Update settings.gradle. 2022-12-20 11:47:03 +01:00
Matthieu Gautier
42eb772a87 Copy gradle things from branch Issue#19
This is mainly a update of gradle itself and new build files.
Build files are not working as the current structure is not the same
as `Issue#19`.
2022-12-20 11:47:03 +01:00
Matthieu Gautier
4cafa3dc57 Reorganize structure.
This mainly do:
- move `src/wrapper/java` into `lib/src` (and remove `src/wrapper`)
- create `lib/src/cpp` and move all `*.(cpp|h)` in it
- move all gradle stuff in `android-kiwix-lib-publisher` into `.`
- remove `android-kiwix-lib-publisher`
2022-12-20 11:46:58 +01:00
Kelson
215237d3a6
Merge pull request #15 from kiwix/fix-magen-badge
Fix Maven badge URL
2022-09-12 10:23:45 +02:00
Emmanuel Engelhart
7bc3239924
Fix Maven badge URL 2022-09-12 10:23:13 +02:00