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

import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;

import io.delphiplatform.api.v3.rdb.entity.video.ShazamCityEntity;
import lombok.AllArgsConstructor;
import lombok.EqualsAndHashCode;
import lombok.Getter;

/**
 * ShazamCity
 */
@JsonPropertyOrder(alphabetic = true)
@Getter
@EqualsAndHashCode
@AllArgsConstructor
public class ShazamCity {

    @JsonProperty("city_id")
    private String cityId;

    @JsonProperty("city_name")
    private String cityName;

    @JsonProperty("country_code")
    private String countryCode;

    public static ShazamCity of(ShazamCityEntity entity) {
        if (entity == null) {
            return null;
        }

        return new ShazamCity(entity.getShazamCityId(), entity.getCityName(), entity.getCountryCode());
    }

}
