mapstruct / mapstruct/mapstruct-idea
Unexpected warning: ''.'' should not be used as a source
Personne n'a encore pris cette issue.
- Langage dominant
- Java
- Étoiles
- 168
- Forks
- 41
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
I often have a use-case when "." is a valid and correct source of my mapping. It is officially supported mapping source, so why the plugin reports it as "should not be used"? Is there any particular reason or maybe it is just a historical burden from the times when MapStruct actually didn't support "." as a source?
Example:
record Failure(String code, String detail) {}
class Foo {
Failure failure;
}
class FooDto {
String failureCode;
String failureDetail;
}
public abstract class FooMapper {
@Mapping(target = "failure", source = ".")
public abstract Foo fromDto(FooDto fooDto);
protected Failure mapFailure(FooDto fooDto) {
return new Failure(fooDto.getFailureCode(), fooDto.getFailureDetail());
}
}
Of course, in this particular case we can just use:
@Mapping(target = "failure.code", source = "failureCode")
@Mapping(target = "failure.detail", source = "failureDetail")
But there are more complex cases when the target object should be created manually, by a custom code, and the only possible source is the whole source object.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire l’avertissement avec l’exemple FooMapper et examinez comment le MapStruct IntelliJ plugin gère les valeurs de @Mapping dont le source est ".". Comparez ce comportement avec la prise en charge documentée par MapStruct de cette forme de source ; le travail est terminé lorsque le mapping valide ne génère plus d’avertissement incorrect ou que la raison de l’avertissement est clairement établie.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- java
- Domaine
- tooling
- Type d'issue
- Bug
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100