xbmc/xbmc — pull request #1174 by Montellese (2012-07-17 12:41:15+00:00)
Title: JSON-RPC: cleanup

These commits are basically cleanup commits which remove hacks that are in the code to be backwards compatible with Eden. There are more and more of these hacks and some stuff (see e.g. #1161) just can't be done without breaking backwards compatibility. So let's make the break and bring all the benefits with it.

b229237 changes the type of some properties provided by xbmc from a concatenated string to an array of strings (e.g. "Rock / Pop" becomes [ "Rock", "Pop" ]).

174c560 properly integrates tagging support into JSON-RPC (not really cleanup).

2fe12ff removes two properties from movies which were never meant to be there.

All those "filter" related commits move the filtering-parameters like "genreid" etc in the FooLibrary.GetFoo() methods into a "filter" parameter. The main reason behind this is that the database logic is not able to apply multiple of those filters (e.g. "genreid" and "actorid") at the same time but nothing prevents a JSON-RPC client from specifying both. With the new "filter" parameter we can restrict JSON-RPC clients to only be able to provide one of those filters per request. Furthermore I have added additional filters like "genre" (in addition to "genreid") and "actor", "studio", "director", "year" etc where possible. So this will allow JSON-RPC clients to provide users with a similar GUI hierarchy as xbmc provides. Furthermore this provides a better solution to #1117 which is currently broken in master.