Fixing repository cached key generation

In case of multiple query parameters, 'hasher.apply' will return only the first parameter. We can fix that using 'hasher.call' to retrieve an object representing both parameters, and then converting it to a JSON string.
This way, we can correctly cache (and retrieve) query with multiple parameters.