Renamed org.kiwix.kiwixlib.{Pair->DirectAccessInfo}

This commit is contained in:
Veloman Yunkan 2020-12-07 23:10:07 +04:00 committed by Emmanuel Engelhart
parent 5a99634dfd
commit 7a465e66d7
5 changed files with 12 additions and 12 deletions

View File

@ -379,22 +379,22 @@ JNIEXPORT jobject JNICALL
Java_org_kiwix_kiwixlib_JNIKiwixReader_getDirectAccessInformation( Java_org_kiwix_kiwixlib_JNIKiwixReader_getDirectAccessInformation(
JNIEnv* env, jobject obj, jstring url) JNIEnv* env, jobject obj, jstring url)
{ {
jclass classPair = env->FindClass("org/kiwix/kiwixlib/Pair"); jclass daiClass = env->FindClass("org/kiwix/kiwixlib/DirectAccessInfo");
jmethodID midPairinit = env->GetMethodID(classPair, "<init>", "()V"); jmethodID daiInitMethod = env->GetMethodID(daiClass, "<init>", "()V");
jobject pair = env->NewObject(classPair, midPairinit); jobject dai = env->NewObject(daiClass, daiInitMethod);
setPairObjValue("", 0, pair, env); setDaiObjValue("", 0, dai, env);
std::string cUrl = jni2c(url, env); std::string cUrl = jni2c(url, env);
try { try {
auto entry = READER->getEntryFromEncodedPath(cUrl); auto entry = READER->getEntryFromEncodedPath(cUrl);
entry = entry.getFinalEntry(); entry = entry.getFinalEntry();
auto part_info = entry.getDirectAccessInfo(); auto part_info = entry.getDirectAccessInfo();
setPairObjValue(part_info.first, part_info.second, pair, env); setDaiObjValue(part_info.first, part_info.second, dai, env);
} catch (std::exception& e) { } catch (std::exception& e) {
LOG("Unable to get direct access info for url: %s", cUrl.c_str()); LOG("Unable to get direct access info for url: %s", cUrl.c_str());
LOG(e.what()); LOG(e.what());
} }
return pair; return dai;
} }
JNIEXPORT jboolean JNICALL JNIEXPORT jboolean JNICALL

View File

@ -12,7 +12,7 @@ java_sources = files([
'org/kiwix/kiwixlib/JNIKiwixString.java', 'org/kiwix/kiwixlib/JNIKiwixString.java',
'org/kiwix/kiwixlib/JNIKiwixBool.java', 'org/kiwix/kiwixlib/JNIKiwixBool.java',
'org/kiwix/kiwixlib/JNIKiwixException.java', 'org/kiwix/kiwixlib/JNIKiwixException.java',
'org/kiwix/kiwixlib/Pair.java' 'org/kiwix/kiwixlib/DirectAccessInfo.java'
]) ])
kiwix_jni = custom_target('jni', kiwix_jni = custom_target('jni',

View File

@ -19,7 +19,7 @@
package org.kiwix.kiwixlib; package org.kiwix.kiwixlib;
public class Pair public class DirectAccessInfo
{ {
public String filename; public String filename;
public long offset; public long offset;

View File

@ -24,7 +24,7 @@ import org.kiwix.kiwixlib.JNIKiwixException;
import org.kiwix.kiwixlib.JNIKiwixString; import org.kiwix.kiwixlib.JNIKiwixString;
import org.kiwix.kiwixlib.JNIKiwixInt; import org.kiwix.kiwixlib.JNIKiwixInt;
import org.kiwix.kiwixlib.JNIKiwixSearcher; import org.kiwix.kiwixlib.JNIKiwixSearcher;
import org.kiwix.kiwixlib.Pair; import org.kiwix.kiwixlib.DirectAccessInfo;
import java.io.FileDescriptor; import java.io.FileDescriptor;
public class JNIKiwixReader public class JNIKiwixReader
@ -103,13 +103,13 @@ public class JNIKiwixReader
* the zim file (or zim part) and directly read the content from it (and so * the zim file (or zim part) and directly read the content from it (and so
* bypassing the libzim). * bypassing the libzim).
* *
* Return a `Pair` (filename, offset) where the content is located. * Return a `DirectAccessInfo` (filename, offset) where the content is located.
* *
* If the content cannot be directly accessed (content is compressed or zim * If the content cannot be directly accessed (content is compressed or zim
* file is cut in the middle of the content), the filename is an empty string * file is cut in the middle of the content), the filename is an empty string
* and offset is zero. * and offset is zero.
*/ */
public native Pair getDirectAccessInformation(String url); public native DirectAccessInfo getDirectAccessInformation(String url);
public native boolean searchSuggestions(String prefix, int count); public native boolean searchSuggestions(String prefix, int count);

View File

@ -246,7 +246,7 @@ inline void setBoolObjValue(const bool value, const jobject obj, JNIEnv* env)
env->SetIntField(obj, objFid, c2jni(value, env)); env->SetIntField(obj, objFid, c2jni(value, env));
} }
inline void setPairObjValue(const std::string& filename, const long offset, inline void setDaiObjValue(const std::string& filename, const long offset,
const jobject obj, JNIEnv* env) const jobject obj, JNIEnv* env)
{ {
jclass objClass = env->GetObjectClass(obj); jclass objClass = env->GetObjectClass(obj);