From 78db48f7cb74da9a77c18c68723b3ff59acbe739 Mon Sep 17 00:00:00 2001 From: sjaakd Date: Wed, 21 Dec 2016 19:43:15 +0100 Subject: [PATCH] #941 adapting more logical names for local variables --- .../org/mapstruct/ap/internal/model/PropertyMapping.java | 4 ++-- .../ap/internal/model/assignment/AdderWrapper.java | 8 ++++++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/PropertyMapping.java b/processor/src/main/java/org/mapstruct/ap/internal/model/PropertyMapping.java index 0d9d217f7..4192c5854 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/PropertyMapping.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/PropertyMapping.java @@ -366,7 +366,7 @@ public class PropertyMapping extends ModelElement { Assignment result = rightHandSide; if ( result.getSourceType().isCollectionType() ) { - result = new AdderWrapper( result, method.getThrownTypes(), isFieldAssignment() ); + result = new AdderWrapper( result, method.getThrownTypes(), isFieldAssignment(), targetPropertyName ); } else { // Possibly adding null to a target collection. So should be surrounded by an null check. @@ -508,7 +508,7 @@ public class PropertyMapping extends ModelElement { ); // create a local variable to which forged method can be assigned. - String desiredName = first( sourceReference.getPropertyEntries() ).getName(); + String desiredName = last( sourceReference.getPropertyEntries() ).getName(); sourceRhs.setSourceLocalVarName( sourceRhs.createLocalVarName( desiredName ) ); return sourceRhs; diff --git a/processor/src/main/java/org/mapstruct/ap/internal/model/assignment/AdderWrapper.java b/processor/src/main/java/org/mapstruct/ap/internal/model/assignment/AdderWrapper.java index 9d6142ed6..9052c0c9e 100644 --- a/processor/src/main/java/org/mapstruct/ap/internal/model/assignment/AdderWrapper.java +++ b/processor/src/main/java/org/mapstruct/ap/internal/model/assignment/AdderWrapper.java @@ -24,6 +24,7 @@ import java.util.List; import java.util.Set; import org.mapstruct.ap.internal.model.common.Type; +import org.mapstruct.ap.internal.util.Nouns; /** * Wraps the assignment in a target setter. @@ -34,10 +35,13 @@ public class AdderWrapper extends AssignmentWrapper { private final List thrownTypesToExclude; - public AdderWrapper( Assignment rhs, List thrownTypesToExclude, boolean fieldAssignment ) { + public AdderWrapper( Assignment rhs, + List thrownTypesToExclude, + boolean fieldAssignment, + String targetPropertyName ) { super( rhs, fieldAssignment ); this.thrownTypesToExclude = thrownTypesToExclude; - String desiredName = rhs.getSourceType().getTypeParameters().get( 0 ).getName(); + String desiredName = Nouns.singularize( targetPropertyName ); rhs.setSourceLocalVarName( rhs.createLocalVarName( desiredName ) ); }