final Map<Object, Object> translated) {
if (translated.containsKey((source))) {
return (FullCustomerDto) translated.get(source);
}
Assert.notNull(source, "argument [source] may not be null");
FullCustomerDto result = new FullCustomerDto(source.getId(), source
.getVersion());
result.setCustomerNr(source.getCustomerNr());
result.setUsername(source.getUsername());
result.setEmailAddress(source.getEmailAddress());
result.setBlackListed(source.isBlackListed());
result.setDiscountPercentage(source.getDiscountPercentage());
result.setFirstName(source.getFirstName());
result.setLastName(source.getLastName());
result.setBirthDate(source.getBirthDate());
result.setAge(source.getAge());
result.setNumberOfEars(source.getNumberOfEars());
result.setSexe(sexeTranslator.toDto(source.getSexe()));
translated.put(source, result);
return result;
}