Yes I didn't want to encode it multiple times. But I understand that the method would "look" nicer if we encode both string in the same place. 
Anyway as I moved the 'String valueAsString = String.valueOf(value)' part into addQueryStringPair, the key and the value are going to be handled differently. So I would keep it this way :)