-
-
Notifications
You must be signed in to change notification settings - Fork 55
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Provide method which builds the OPDS URL #480
Comments
@mgautierfr Please let us know quickly if this does not make sense |
@kelson42 I can't make sense of this ticket probably because I am missing some background.
Can you please provide at least two examples in different clients? |
@veloman-yunkan Where is built the https://library.kiwix.org/catalog/search OPDS URL with all the filter arguments? |
This is what I found in kiwix-desktop searching for 'catalog': https://github.com/kiwix/kiwix-desktop/blob/1d8c556075df65999cbde690db7200b181f62df6/src/opdsrequestmanager.cpp#L10-L39 The same search in kiwix-android yields empty results. |
@veloman-yunkan This is what I meant with this ticket, each port should not do its own code to build the URL. Libkiwix shoukd provide a primitive taking the filters and returning the URL string. |
The idea here is to use kiwix-lib to fully encapsulate the opds catalog.
What is missing is a handling of the urls on the client side. This need will become even more needed with all the changes on the (opds) api (#209, https://github.com/kiwix/kiwix-tools/issues/317, #421, ...) This (cpp) API is not so easy to design. Maybe, we can extend |
Exactly
This is an interesting discussion and indeed a complex topic. But IMO we should open a new ticket. This ticket is only about generating the URL string, this is neither complex nor subject to a discussion IMO. |
For now, the opds url is only root.xml or a search query. If we decide to change that when we design the whole system, it would be not difficult to do. |
@mgautierfr This ticket has been written with the search query in mind and agree with your last proposition. This is true that we might need an additional trivial method/api to get the root.xml URL if we want to be coherent. |
@veloman-yunkan Are things clear now for implementation? |
@kelson42 I think so. I will submit a PR soon, and we'll see if I understood everything correctly. |
Currently the process is:
1 - client builds the OPDS URL
2 - client makes the OPDS URL call and retrieve the OPDS feed
3 - client shares the OPDS feed with libkiwix which parse it and in returns gives the list of books as object
I want that the first steps is done by the libkiwix as this is a common step to all clients. A first version of that code should be already available in Kiwix Desktop (and therefore should be migrated to libkiwix and replaced by a call to new libkiwix method).
The JNI should be updated as Kiwix Android needs it really soon.
The text was updated successfully, but these errors were encountered: