Review Request 125797: protocoltojson application

Christoph Cullmann cullmann at kde.org
Mon Oct 26 17:39:28 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.

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.


- 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/794659a3/attachment-0001.html>


More information about the Kde-frameworks-devel mailing list