diff --git a/src/wrapper/java/book.cpp b/src/wrapper/java/book.cpp index 9f7df5b73..2d555f3b7 100644 --- a/src/wrapper/java/book.cpp +++ b/src/wrapper/java/book.cpp @@ -39,6 +39,16 @@ Java_org_kiwix_kiwixlib_Book_dispose(JNIEnv* env, jobject thisObj) #define BOOK (getPtr(env, thisObj)) +METHOD(void, Book, update__Lorg_kiwix_kiwixlib_Book_2, jobject otherBook) +{ + BOOK->update(*getPtr(env, otherBook)); +} + +METHOD(void, Book, update__Lorg_kiwix_kiwixlib_JNIKiwixReader_2, jobject reader) +{ + BOOK->update(**Handle::getHandle(env, reader)); +} + #define GETTER(retType, name) JNIEXPORT retType JNICALL \ Java_org_kiwix_kiwixlib_Book_##name (JNIEnv* env, jobject thisObj) \ { \ @@ -68,7 +78,7 @@ GETTER(jstring, getFaviconUrl) GETTER(jstring, getFaviconMimeType) METHOD(jstring, Book, getTagStr, jstring tagName) try { - auto cRet = Book->getTagStr(jni2c(tagName, env)); + auto cRet = BOOK->getTagStr(jni2c(tagName, env)); return c2jni(cRet, env); } catch(...) { return c2jni("", env); diff --git a/src/wrapper/java/org/kiwix/kiwixlib/Book.java b/src/wrapper/java/org/kiwix/kiwixlib/Book.java index 3f00956a9..c40cd1670 100644 --- a/src/wrapper/java/org/kiwix/kiwixlib/Book.java +++ b/src/wrapper/java/org/kiwix/kiwixlib/Book.java @@ -5,6 +5,10 @@ public class Book { public Book() { allocate(); } + + public native void update(Book book); + public native void update(JNIKiwixReader reader); + @Override protected void finalize() { dispose(); }