We are using objects only for responses with variable key names, this difficults the parsing process and the model definition (we are forced to use any getter or any setter annotations), an example for common torrents
:
"torrents": {
"en": {
"1080p": {
"url": "magnet:?xt=urn:btih:DC5E0F28C56CBB93E57FC11CA8E56CC79A5D2E13",
"seed": 777,
"peer": 276,
"size": 1771674010,
"filesize": "1.65 GB",
"provider": "YTS"
},
"720p": {
"url": "magnet:?xt=urn:btih:1C12E9D7A919113C923EF20089E7435890A12933",
"seed": 611,
"peer": 170,
"size": 787847578,
"filesize": "751.35 MB",
"provider": "YTS"
}
}
}
"torrents": [{
"language": "en",
"qualities": [{
"quality": "1080p",
"url": "magnet:?xt=urn:btih:DC5E0F28C56CBB93E57FC11CA8E56CC79A5D2E13",
"seed": 777,
"peer": 276,
"size": 1771674010,
"filesize": "1.65 GB",
"provider": "YTS"
},
{
"quality": "720p",
"url": "magnet:?xt=urn:btih:1C12E9D7A919113C923EF20089E7435890A12933",
"seed": 611,
"peer": 170,
"size": 787847578,
"filesize": "751.35 MB",
"provider": "YTS"
}]
},
{
"language": "es",
"qualities": [{
"quality": "1080p",
"url": "magnet:?xt=urn:btih:DC5E0F28C56CBB93E57FC11CA8E56CC79A5D2E13",
"seed": 777,
"peer": 276,
"size": 1771674010,
"filesize": "1.65 GB",
"provider": "YTS"
},
{
"quality": "720p",
"url": "magnet:?xt=urn:btih:1C12E9D7A919113C923EF20089E7435890A12933",
"seed": 611,
"peer": 170,
"size": 787847578,
"filesize": "751.35 MB",
"provider": "YTS"
}]
}]
Obviously, this will cause an impact in the desktop and Android app response treatment.