Open sywesk opened 10 years ago
I agree, I think it would be better, and become the quickest and easiest upgrade. If you want I can try to implement this functionality. :+1: But before we would have to create a standard for XML, have any suggestions? :-D
I agree with you guys. I personally prefer JSON files.
I have a suggestion (i don't made it, only taken from Ratio Master 1.9.1)
If it can help...
I started working on this feature. I'm using JSON, and for this I installed the Newtonsoft.JSON library.
I am still in doubt, between using a JSON file for each software. (Ex: A BitComet.json file and all its versions in, another for uTorrent, etc ...) or use a single file for all clients.
For now, I'm using a single Json file, with all the clients inside. Following this model: http://www.jsoneditoronline.org/?id=d5aa3d7d5011b8c8091dcdba32fb8b90
All clients in separate files will allow downloading new clients separately. :+1: for separate files.
@apiweb I see that you took each client profile and put them in separate objects from their client name, and then in each one of them you have the name + versions. Isn't that a bit redundant ? I think you can just put the version as the member name like :
"BitComet": {
"1.20": {...}
}
Original :
"BitComet":{
"BitComet 1.20":{...}
}
What do you think ?
Aside from that, the whole file looks good to me :)
For the separate files, there's still the granularity to choose : client level, with all their versions, or version level ?
Also, couldn't the JSON be seen as a little database ? thus being updated by the software at runtime with an updater / package manager kind of (and the database could be edited by hand when needed, as it's json). I'm not advocating this approach, just bringing another way of seeing the problem
All bittorrent clients are hard-coded into RM.cs. I think we should put them in a separate XML or something like that, to be able to dynamically add / remove them without compiling. It would also make the RM.cs more readable.