public List<CountryDto> getAll() {
   return countryRepository
       .findAll()
       .stream()
       .map(countryAssembler.convertCountryToDto())
       .collect(Collectors.toList());
 }
 @Cacheable("countriesCache")
 public List<CountryDto> getByName(String name) {
   Preconditions.checkArgument(StringUtils.isNotBlank(name), "Name cannot be blank");
   return countryRepository
       .findByName(name)
       .stream()
       .map(countryAssembler.convertCountryToDto())
       .collect(Collectors.toList());
 }