Review Request 125797: protocoltojson application
Christoph Cullmann
cullmann at kde.org
Mon Oct 26 17:51:37 UTC 2015
> On Oct. 26, 2015, 5:27 p.m., Alex Richardson wrote:
> > The protocoltojson program will have to read the plugin metadata.json file to insert the "KDE-KIO-Protocols" to that json file as it is not possible to embed more than one JSON file into a Qt plugin.
> >
> > I am not sure whether we need a CMake macro, to me this is a conversion that should be done once and then we store the JSON file in the repository so that we don't increase the build time.
>
> Christoph Cullmann wrote:
> Actually ioslaves have atm no other json stored, this would be the only meta data added to them, I think no ioslave is at all a qt plugin and to stay compatible, I would only add a dummy class there with this json embedded to have the meta data available. But perhaps I am mistaken.
> For the one time conversion: I am not sure that the .protocol files will be deprecated, I thought to do it like ATM for the .desktop files for the plugins for which we kept the .desktop files, too.
>
> David Faure wrote:
> IIRC we kept .desktop files because there was no other way to translate them, back then.
>
> But that's not an issue anymore, and not an issue for .protocol files anyway.
>
> So when converting an ioslave to json, rather than just change its cmakelists, we could also just convert the .protocol to json, either with a one-time conversion tool (now that you wrote it...) or by hand, reading some documentation on the format.
> Seems simpler than more cmake magic.
>
> KIO will need to keep being able to parse .protocol files anyway, for compat reasons, that's unrelated.
Ok ;) That makes its easier, no cmake foo needed, cool.
For the second issue: I am right, or? There is no other meta data we need inside the io slave?
- Christoph
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/125797/#review87444
-----------------------------------------------------------
On Oct. 26, 2015, 5:03 p.m., Christoph Cullmann wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/125797/
> -----------------------------------------------------------
>
> (Updated Oct. 26, 2015, 5:03 p.m.)
>
>
> Review request for KDE Frameworks, Alex Richardson and David Faure.
>
>
> Repository: kio
>
>
> Description
> -------
>
> Application to convert multiple .protocol files into on json map.
> If this is acceptable my next steps would be:
>
> 1) use this, to generate json files and embedded them in io slaves
> 2) extend the protocol factory to search in the embedded files
>
> That would make the protocol factory parts of: https://git.reviewboard.kde.org/r/125778/ not needed.
>
>
> Diffs
> -----
>
> src/CMakeLists.txt f65ad8e
> src/protocoltojson/CMakeLists.txt PRE-CREATION
> src/protocoltojson/main.cpp PRE-CREATION
>
> Diff: https://git.reviewboard.kde.org/r/125797/diff/
>
>
> Testing
> -------
>
> Feed in http slave files:
>
> ./protocoltojson -o http.json /local/cullmann/kf5/src/frameworks/kio/src/ioslaves/http/*.protocol
>
> We get mapping:
>
> {
> "http": {
> "Class": ":internet",
> "Icon": "text-html",
> "X-DocPath": "kioslave5/http/index.html",
> "defaultMimetype": "application/octet-stream",
> "deleting": true,
> "determineMimetypeFromExtension": false,
> "exec": "kf5/kio/http",
> "input": "none",
> "maxInstances": 20,
> "maxInstancesPerHost": 5,
> "output": "filesystem",
> "protocol": "http",
> "reading": true,
> "writing": true
> },
> "https": {
> "Class": ":internet",
> "Icon": "text-html",
> "X-DocPath": "kioslave5/http/index.html",
> "config": "http",
> "defaultMimetype": "application/octet-stream",
> "deleting": true,
> "determineMimetypeFromExtension": false,
> "exec": "kf5/kio/http",
> "input": "none",
> "maxInstances": 20,
> "maxInstancesPerHost": 5,
> "output": "filesystem",
> "protocol": "https",
> "reading": true,
> "writing": true
> },
> "webdav": {
> "Class": ":internet",
> "Icon": "folder-remote",
> "X-DocPath": "kioslave5/webdav/index.html",
> "defaultMimetype": "application/octet-stream",
> "deleteRecursive": true,
> "deleting": true,
> "determineMimetypeFromExtension": false,
> "exec": "kf5/kio/http",
> "input": "none",
> "listing": [
> "Name",
> "Type",
> "Size",
> "Date",
> "AccessDate",
> "Access"
> ],
> "makedir": true,
> "maxInstances": 20,
> "maxInstancesPerHost": 5,
> "moving": true,
> "output": "filesystem",
> "protocol": "webdav",
> "reading": true,
> "writing": true
> },
> "webdavs": {
> "Class": ":internet",
> "Icon": "folder-remote",
> "X-DocPath": "kioslave5/webdav/index.html",
> "config": "webdav",
> "defaultMimetype": "application/octet-stream",
> "deleteRecursive": true,
> "deleting": true,
> "determineMimetypeFromExtension": false,
> "exec": "kf5/kio/http",
> "input": "none",
> "listing": [
> "Name",
> "Type",
> "Size",
> "Date",
> "AccessDate",
> "Access"
> ],
> "makedir": true,
> "maxInstances": 20,
> "maxInstancesPerHost": 5,
> "moving": true,
> "output": "filesystem",
> "protocol": "webdavs",
> "reading": true,
> "writing": true
> }
> }
>
>
> Thanks,
>
> Christoph Cullmann
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20151026/d00be7a0/attachment-0001.html>
More information about the Kde-frameworks-devel
mailing list