Search in sources :

Example 6 with Artist

use of org.mapstruct.ap.test.nestedsourceproperties.source.Artist in project mapstruct by mapstruct.

the class NestedSourcePropertiesTest method shouldGenerateImplementationForPropertyNamesOnly.

@ProcessorTest
@WithClasses({ ArtistToChartEntry.class })
public void shouldGenerateImplementationForPropertyNamesOnly() {
    generatedSource.addComparisonToFixtureFor(ArtistToChartEntry.class);
    Studio studio = new Studio();
    studio.setName("Abbey Road");
    studio.setCity("London");
    Label label = new Label();
    label.setStudio(studio);
    label.setName("EMY");
    Artist artist = new Artist();
    artist.setName("The Beatles");
    artist.setLabel(label);
    Song song = new Song();
    song.setArtist(artist);
    song.setTitle("A Hard Day's Night");
    ChartEntry chartEntry = ArtistToChartEntry.MAPPER.map(song);
    assertThat(chartEntry).isNotNull();
    assertThat(chartEntry.getArtistName()).isEqualTo("The Beatles");
    assertThat(chartEntry.getChartName()).isNull();
    assertThat(chartEntry.getCity()).isEqualTo("London");
    assertThat(chartEntry.getPosition()).isEqualTo(0);
    assertThat(chartEntry.getRecordedAt()).isEqualTo("Abbey Road");
    assertThat(chartEntry.getSongTitle()).isEqualTo("A Hard Day's Night");
}
Also used : Artist(org.mapstruct.ap.test.nestedsourceproperties.source.Artist) Song(org.mapstruct.ap.test.nestedsourceproperties.source.Song) ChartEntry(org.mapstruct.ap.test.nestedsourceproperties._target.ChartEntry) Label(org.mapstruct.ap.test.nestedsourceproperties.source.Label) Studio(org.mapstruct.ap.test.nestedsourceproperties.source.Studio) ProcessorTest(org.mapstruct.ap.testutil.ProcessorTest) WithClasses(org.mapstruct.ap.testutil.WithClasses)

Example 7 with Artist

use of org.mapstruct.ap.test.nestedsourceproperties.source.Artist in project mapstruct by mapstruct.

the class ArtistToChartEntryImpl method songArtistLabelStudioName.

private String songArtistLabelStudioName(Song song) {
    if (song == null) {
        return null;
    }
    Artist artist = song.getArtist();
    if (artist == null) {
        return null;
    }
    Label label = artist.getLabel();
    if (label == null) {
        return null;
    }
    Studio studio = label.getStudio();
    if (studio == null) {
        return null;
    }
    String name = studio.getName();
    if (name == null) {
        return null;
    }
    return name;
}
Also used : Artist(org.mapstruct.ap.test.nestedsourceproperties.source.Artist) Label(org.mapstruct.ap.test.nestedsourceproperties.source.Label) Studio(org.mapstruct.ap.test.nestedsourceproperties.source.Studio)

Example 8 with Artist

use of org.mapstruct.ap.test.nestedsourceproperties.source.Artist in project mapstruct by mapstruct.

the class ArtistToChartEntryImpl method songArtistName.

private String songArtistName(Song song) {
    if (song == null) {
        return null;
    }
    Artist artist = song.getArtist();
    if (artist == null) {
        return null;
    }
    String name = artist.getName();
    if (name == null) {
        return null;
    }
    return name;
}
Also used : Artist(org.mapstruct.ap.test.nestedsourceproperties.source.Artist)

Example 9 with Artist

use of org.mapstruct.ap.test.nestedsourceproperties.source.Artist in project mapstruct by mapstruct.

the class ArtistToChartEntryImpl method songArtistLabelStudioCity.

private String songArtistLabelStudioCity(Song song) {
    if (song == null) {
        return null;
    }
    Artist artist = song.getArtist();
    if (artist == null) {
        return null;
    }
    Label label = artist.getLabel();
    if (label == null) {
        return null;
    }
    Studio studio = label.getStudio();
    if (studio == null) {
        return null;
    }
    String city = studio.getCity();
    if (city == null) {
        return null;
    }
    return city;
}
Also used : Artist(org.mapstruct.ap.test.nestedsourceproperties.source.Artist) Label(org.mapstruct.ap.test.nestedsourceproperties.source.Label) Studio(org.mapstruct.ap.test.nestedsourceproperties.source.Studio)

Example 10 with Artist

use of org.mapstruct.ap.test.nestedsourceproperties.source.Artist in project mapstruct by mapstruct.

the class ChartEntryToArtistUpdateImpl method chartEntryToSong.

protected void chartEntryToSong(ChartEntry chartEntry, Song mappingTarget) {
    if (chartEntry == null) {
        return;
    }
    if (mappingTarget.getArtist() == null) {
        mappingTarget.setArtist(new Artist());
    }
    chartEntryToArtist(chartEntry, mappingTarget.getArtist());
    if (chartEntry.getSongTitle() != null) {
        mappingTarget.setTitle(chartEntry.getSongTitle());
    }
    if (mappingTarget.getPositions() != null) {
        List<Integer> list = mapPosition(chartEntry.getPosition());
        if (list != null) {
            mappingTarget.getPositions().clear();
            mappingTarget.getPositions().addAll(list);
        }
    } else {
        List<Integer> list = mapPosition(chartEntry.getPosition());
        if (list != null) {
            mappingTarget.setPositions(list);
        }
    }
}
Also used : Artist(org.mapstruct.ap.test.nestedsourceproperties.source.Artist)

Aggregations

Artist (org.mapstruct.ap.test.nestedsourceproperties.source.Artist)12 Label (org.mapstruct.ap.test.nestedsourceproperties.source.Label)7 Studio (org.mapstruct.ap.test.nestedsourceproperties.source.Studio)7 Song (org.mapstruct.ap.test.nestedsourceproperties.source.Song)6 ChartEntry (org.mapstruct.ap.test.nestedsourceproperties._target.ChartEntry)2 ProcessorTest (org.mapstruct.ap.testutil.ProcessorTest)2 WithClasses (org.mapstruct.ap.testutil.WithClasses)2 ChartEntryLabel (org.mapstruct.ap.test.nestedsourceproperties._target.ChartEntryLabel)1 Chart (org.mapstruct.ap.test.nestedsourceproperties.source.Chart)1