Kelson
af78aa5fd0
Remove spaces which had visual impact
2019-08-27 16:24:14 +02:00
Matthieu Gautier
2ea0e5bab0
New version 6.0.2
2019-08-22 16:05:35 +02:00
Matthieu Gautier
b92a4b2e04
Correctly set the groupId in the pom file.
2019-08-22 16:03:46 +02:00
Matthieu Gautier
ef758aa0a6
New version 6.0.1
2019-08-21 15:38:39 +02:00
Matthieu Gautier
b8e5de6a47
Merge pull request #262 from kiwix/pom_gradle
...
Generate the pom file from gradle
2019-08-21 14:28:52 +02:00
Matthieu Gautier
aed808ae5e
Generate the pom file from gradle
2019-08-21 14:22:07 +02:00
Matthieu Gautier
e25b27b354
Fix use of strtok on windows. ( #261 )
...
Fix use of strtok on windows.
2019-08-19 17:42:55 +02:00
Matthieu Gautier
12a93c3e29
Fix use of strtok on windows.
...
On windows, strtok_r is called strto_s.
2019-08-19 17:35:22 +02:00
Matthieu Gautier
b3abb3a35b
New version 6.0.0 ( #260 )
...
New version 6.0.0
2019-08-19 17:27:20 +02:00
Matthieu Gautier
8c3b51b81c
New version 6.0.0
2019-08-19 17:18:16 +02:00
Matthieu Gautier
5f81fab1e2
Specs says ZIM favicon should be at '-/favicon', should be tried… ( #257 )
...
Specs says ZIM favicon should be at '-/favicon', should be tried first
2019-08-19 17:17:34 +02:00
Emmanuel Engelhart
cea201b394
Specs says ZIM favicon should be at '-/favicon', should be tried first
2019-08-19 16:27:55 +02:00
Matthieu Gautier
d0f6fadda2
Add JNIKiwixString constructors ( #256 )
...
Add JNIKiwixString constructors
2019-08-14 10:38:36 +02:00
mhutti1
8672aede97
Add JNIKiwixString constructors
2019-08-13 17:55:48 +02:00
Matthieu Gautier
8edac07fcc
Merge pull request #255 from kiwix/JNI_checkUrl
...
Add a JNI method to check if an url exists and is a redirection.
2019-08-13 11:30:36 +02:00
Matthieu Gautier
6ab52e2b9e
Add a JNI method to check if an url exists and is a redirection.
2019-08-13 11:19:39 +02:00
Matthieu Gautier
858c2fecbe
Fix nameMapper initialization. ( #254 )
...
Fix nameMapper initialization.
2019-08-13 11:19:21 +02:00
Matthieu Gautier
d90a27af11
Fix nameMapper initialization.
2019-08-12 16:16:26 +02:00
Matthieu Gautier
a8668db2fe
Make the gtest dependency optional. ( #253 )
...
Make the gtest dependency optional.
2019-08-12 15:59:31 +02:00
Matthieu Gautier
3e3e1683f5
Make the gtest dependency optional.
...
This is needed to build in flatpak.
2019-08-12 15:31:16 +02:00
Matthieu Gautier
1e0c9a120a
Do not embed the gtest dependency. ( #252 )
...
Do not embed the gtest dependency.
2019-08-12 15:01:40 +02:00
Matthieu Gautier
ca27ddf41a
Do not embed the gtest dependency.
...
We have a special wrap file for that.
2019-08-12 14:55:39 +02:00
Matthieu Gautier
99dcdd849a
Jni fix ( #251 )
...
Jni fix
2019-08-12 14:55:30 +02:00
Matthieu Gautier
a65e192f0f
[JNI] Allow android to know that an article is a redirect.
...
Android need to handle the redirection by doing a redirection in the web
view, not by providing the content of the targeted article.
This is already what we do in kiwix-serve or ios.
The API should be far better by returning a Entry but for now,
we just change the given url if the article is a redirection.
2019-08-12 13:03:20 +02:00
Matthieu Gautier
513cc9c90f
[JNI] Fix log typo.
2019-08-12 12:43:52 +02:00
Matthieu Gautier
231ae095f6
Correctly set that book's path is valid when updating it from a reader.
2019-08-12 12:43:52 +02:00
Matthieu Gautier
9a0c6da018
Library construction doesn't take argument
2019-08-12 12:43:52 +02:00
Matthieu Gautier
52299ef767
Fix computeAbsolutePath.
...
Correctly delete the duplicated string.
Use strtok_r to be thread safe.
2019-08-12 12:43:52 +02:00
Matthieu Gautier
44bec86f31
Ci test ( #248 )
...
Ci test
2019-08-12 12:39:51 +02:00
Matthieu Gautier
c4963268ba
Fix regexTools.
...
The buildMatcher must not take a rvalue as it will keep a reference
to it.
2019-08-12 12:05:51 +02:00
Matthieu Gautier
fee2da57e6
Add tests of regex tools.
2019-08-12 12:05:51 +02:00
Matthieu Gautier
0154131d74
Run test on the CI.
2019-08-12 12:05:51 +02:00
Matthieu Gautier
3fa503efb1
[JNI] Fix implementation of setDataDirectory. ( #247 )
...
[JNI] Fix implementation of setDataDirectory.
2019-08-11 15:14:24 +02:00
Matthieu Gautier
73a29ccb24
[JNI] Fix implementation of setDataDirectory.
...
Now that setDataDirectory is a static method, we need to take an
jclass instead of a jobject.
2019-08-11 15:09:26 +02:00
Matthieu Gautier
1e94665c07
Http integration ( #246 )
...
Http integration
2019-08-11 11:54:09 +02:00
Matthieu Gautier
7060afae66
[SERVER] Catch any error and return a 500 response instead of crashing.
...
The server will be running some code on the behalf of the calling code.
We really don't what to crash the library (and the binary) because
of a wrong request.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
de819dff25
Fix few errors in static files.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
4d3df4e889
Add JNI wrapper around the library and the server.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
cd050ddcc8
Use camelCase.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
635d4438e5
Make the server take a pointer to the library instead of a reference.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
ce09375c6c
Reduce complexity of handle_search.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
fae0918f49
Reduce complexity of handle_catalog.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
d90f8b0f05
Add a name_mapper mapping the HumanReadable name to the id.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
abb5db0193
Clean up includes in server.cpp
2019-08-11 11:30:43 +02:00
Matthieu Gautier
e452f5cf36
Ensure that the root is correctly formatted.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
c890e1c87e
Add support of a binding to a specific ip address.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
e5ef3780db
Rename humanReadableBookId to bookName.
...
`humanReadableBookId` is a bit long and doesn't represent what it is
(this is not a id).
`bookName` is far better.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
2aeed65205
Better handling of invalid request.
...
Do no crash if we can get a book or a reader for the requested content.
2019-08-11 11:30:43 +02:00
Matthieu Gautier
c1faf55ae8
Introduce the server functionality in the kiwix-lib.
...
This code is mainly copied from kiwix-tools.
But :
- Move all the response thing in a new class Response.
- This Response class is responsible to handle all the MHD_response
configuration. This way the server handle a global object and do
no call to MHD_response*
- Server uses a lot more the templating system with mustache.
There are still few regex operations (because we need to
change a content already existing).
- By default, the server serves the content using the id as name.
- Server creates a new Searcher per request. This way, we don't have
to protect the search for multi-thread and we can do several search
in the same time.
- search results are not cached, this will allow future improvement in the
search algorithm.
- the home page is not cached.
- Few more verbose information (number of request served, time spend to
respond to a request).
TOOD:
- Readd interface selection.
- Do Android wrapper.
- Remove KiwixServer (who use a external process).
-
2019-08-11 11:30:43 +02:00
Matthieu Gautier
64dfea2547
Move the search html renderer in a different class than the searcher.
...
This is two different functionnalies, we don't need to polute the searcher
api with things to render the html.
2019-08-11 10:19:48 +02:00