mirror of https://github.com/kiwix/libkiwix.git
Merge pull request #255 from kiwix/JNI_checkUrl
Add a JNI method to check if an url exists and is a redirection.
This commit is contained in:
commit
8edac07fcc
|
@ -224,6 +224,21 @@ JNIEXPORT jstring JNICALL Java_org_kiwix_kiwixlib_JNIKiwixReader_getMimeType(
|
||||||
return mimeType;
|
return mimeType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
JNIEXPORT jstring JNICALL Java_org_kiwix_kiwixlib_JNIKiwixReader_checkUrl(
|
||||||
|
JNIEnv* env, jobject obj, jstring url)
|
||||||
|
{
|
||||||
|
jstring finalUrl;
|
||||||
|
std::string cUrl = jni2c(url, env);
|
||||||
|
try {
|
||||||
|
auto entry = READER->getEntryFromEncodedPath(cUrl);
|
||||||
|
entry = entry.getFinalEntry();
|
||||||
|
finalUrl = c2jni(entry.getPath(), env);
|
||||||
|
} catch (std::exception& e) {
|
||||||
|
finalUrl = c2jni("", env);
|
||||||
|
}
|
||||||
|
return finalUrl;
|
||||||
|
}
|
||||||
|
|
||||||
JNIEXPORT jbyteArray JNICALL Java_org_kiwix_kiwixlib_JNIKiwixReader_getContent(
|
JNIEXPORT jbyteArray JNICALL Java_org_kiwix_kiwixlib_JNIKiwixReader_getContent(
|
||||||
JNIEnv* env, jobject obj, jobject url, jobject titleObj, jobject mimeTypeObj, jobject sizeObj)
|
JNIEnv* env, jobject obj, jobject url, jobject titleObj, jobject mimeTypeObj, jobject sizeObj)
|
||||||
{
|
{
|
||||||
|
|
|
@ -38,6 +38,16 @@ public class JNIKiwixReader
|
||||||
|
|
||||||
public native String getMimeType(String url);
|
public native String getMimeType(String url);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Check if a url exists and is a redirect or not.
|
||||||
|
*
|
||||||
|
* Return an empty string if the url doesn't exist in the reader.
|
||||||
|
* Return the url of the "final" entry.
|
||||||
|
* - equal to the input url if the entry is not a redirection.
|
||||||
|
* - different if the url is a redirection (and the webview should redirect to it).
|
||||||
|
*/
|
||||||
|
public native String checkUrl(String url);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Get the content of a article.
|
* Get the content of a article.
|
||||||
*
|
*
|
||||||
|
|
Loading…
Reference in New Issue