package io.delphiplatform.api.v3.model.shazam;

import com.fasterxml.jackson.annotation.JsonProperty;

import io.delphiplatform.api.v3.model.video.ChartPositionSummary;
import io.delphiplatform.api.v3.rdb.entity.video.ShazamChartTrackSummaryReportEntity;
import lombok.Getter;

@Getter
public class ShazamChartPositionSummary extends ChartPositionSummary {

    @JsonProperty("total_shazams")
    private Integer totalShazams;

    public ShazamChartPositionSummary totalShazams(Integer totalShazams) {
        this.totalShazams = totalShazams;
        return this;
    }

    public static ShazamChartPositionSummary of(ShazamChartTrackSummaryReportEntity entity) {
        if (entity == null) {
            return null;
        }

        ShazamChartPositionSummary result = new ShazamChartPositionSummary();
        fill(result, entity);
        result.totalShazams(entity.getTotalShazams());
        return result;
    }

}
