public async Task <FootballerDetails> readFootballerDetails(int footballerId)
    {
        var request = _generator.GenerateFootballerDetailRequest(footballerId);
        FootballerDetails details = await _executor.Execute <FootballerDetails>(request);

        return(details);
    }
 public async Task <IDictionary <int, FootballerDetails> > readFootballerDetails(ICollection <int> ids)
 {
     foreach (var id in ids)
     {
         FootballerDetails detail = getCachedDetails(id);
         if (detail == null)
         {
             _footballerCache.footballerDetails.Add(id, await readFootballerDetails(id));
         }
     }
     return(_footballerCache.footballerDetails);
 }