package io.delphiplatform.api.v3.rdb.entity.spotify;

import java.time.LocalDate;
import java.util.Set;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import io.delphiplatform.api.v3.constant.ChartmetricPartner;
import lombok.Getter;
import lombok.Setter;

@Getter
@Setter
@Entity
@Table(name = "dim_spotify_album", schema = ChartmetricPartner.SPOTIFY)
public class SpotifyAlbumEntity {

    @Id
    @Column(name = "album_id")
    private String albumId;

    @Column(name = "name")
    private String name;

    @Column(name = "image_url")
    private String imageUrl;

    @Column(name = "upc")
    private String upc;

    @Column(name = "release_date")
    private LocalDate releaseDate;

    @OneToMany(mappedBy = "spotifyAlbum")
    private Set<SpotifyPlaylistTrackEntity> spotifyPlaylistTrack;
}
