Example:
public interface AddonMapper extends Function<Addon, AddonProxy> {
@Override
@Mapping(source = "addonCategory.value", target = "addonCategory")
@Mapping(source = "addonCategory.translation", target = "addonCategoryTranslated")
AddonProxy apply(Addon addon);
}
// Generates private method like that, but this method should be STATIC:
private String addonAddonCategoryValue(Addon addon) {
if ( addon == null ) {
return null;
}
TranslatedValue addonCategory = addon.getAddonCategory();
if ( addonCategory == null ) {
return null;
}
String value = addonCategory.getValue();
if ( value == null ) {
return null;
}
return value;
}