title: Choice the right source during mapping with mapstruct
body: <p>I want to start a discussion with all of you on the best way to approach on this problem.
  I have a java object like this, it's a source</p>
  <pre><code>public class Source{
    private String customValue;
    private List&lt;String&gt; listOfCustomValues;
    
    //etc
  }
  </code></pre>
  <p>and, of course, i have a target java object</p>
  <pre><code>public class Target{
    private String ownCustomValue;
          
    //etc
  }
  </code></pre>
  <p>now, i would to mapping in this way (or something similar)</p>
  <pre><code>@Mapper
  public abstract class MapperSourceToTarget {
    @BeanMapping(ignoreByDefault = true)
    @Mapping(target = &quot;ownCustomValue&quot;, qualifiedByName = &quot;customMapping&quot;)
    public abstract Target fromSourceToTarget ( Source source);
  
  @Named(&quot;customMapping&quot;)
  public String toFuelType(Source source) {
    String firstValue = source.getListOfCustomValues().get(0);
    return ( firstValue.isEmpty() || firstValue == null ) ? source.getCustomValue() : firstValue;
    }
  
  }
  </code></pre>
  <p>do you have any suggestion or criticism on this behavior? I can do this in a better way?</p>