mirror of https://github.com/ErsatzTV/ErsatzTV.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
138 lines
4.5 KiB
138 lines
4.5 KiB
using System.Text.Json.Serialization; |
|
|
|
namespace ErsatzTV.Infrastructure.Search.Models; |
|
|
|
public class ElasticSearchItem : MinimalElasticSearchItem |
|
{ |
|
[JsonExtensionData] |
|
public Dictionary<string, object> AdditionalProperties { get; set; } = new(); |
|
|
|
[JsonPropertyName(LuceneSearchIndex.TitleField)] |
|
public string Title { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.LibraryNameField)] |
|
public string LibraryName { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.LibraryIdField)] |
|
public int LibraryId { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.TitleAndYearField)] |
|
public string TitleAndYear { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.StateField)] |
|
public string State { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.MetadataKindField)] |
|
public string MetadataKind { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.LanguageField)] |
|
public List<string> Language { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.LanguageTagField)] |
|
public List<string> LanguageTag { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.SubLanguageField)] |
|
public List<string> SubLanguage { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.SubLanguageTagField)] |
|
public List<string> SubLanguageTag { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.MinutesField)] |
|
public int Minutes { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.SecondsField)] |
|
public int Seconds { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.HeightField)] |
|
public int Height { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.WidthField)] |
|
public int Width { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.VideoCodecField)] |
|
public string VideoCodec { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.VideoBitDepthField)] |
|
public int VideoBitDepth { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.VideoDynamicRangeField)] |
|
public string VideoDynamicRange { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.CollectionField)] |
|
public List<string> Collection { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ContentRatingField)] |
|
public List<string> ContentRating { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ReleaseDateField)] |
|
public string ReleaseDate { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.AddedDateField)] |
|
public string AddedDate { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.AlbumField)] |
|
public string Album { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.AlbumArtistField)] |
|
public List<string> AlbumArtist { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.PlotField)] |
|
public string Plot { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.GenreField)] |
|
public List<string> Genre { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.TagField)] |
|
public List<string> Tag { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.TagFullField)] |
|
public List<string> TagFull { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.StudioField)] |
|
public List<string> Studio { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ArtistField)] |
|
public List<string> Artist { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ActorField)] |
|
public List<string> Actor { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.DirectorField)] |
|
public List<string> Director { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.WriterField)] |
|
public List<string> Writer { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.TraktListField)] |
|
public List<string> TraktList { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.SeasonNumberField)] |
|
public int SeasonNumber { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.EpisodeNumberField)] |
|
public int EpisodeNumber { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ShowTitleField)] |
|
public string ShowTitle { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ShowGenreField)] |
|
public List<string> ShowGenre { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ShowTagField)] |
|
public List<string> ShowTag { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ShowStudioField)] |
|
public List<string> ShowStudio { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.ShowContentRatingField)] |
|
public List<string> ShowContentRating { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.StyleField)] |
|
public List<string> Style { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.MoodField)] |
|
public List<string> Mood { get; set; } |
|
|
|
[JsonPropertyName(LuceneSearchIndex.LibraryFolderIdField)] |
|
public int LibraryFolderId { get; set; } |
|
}
|
|
|