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.
3985 lines
192 KiB
3985 lines
192 KiB
using System; |
|
using Microsoft.EntityFrameworkCore.Metadata; |
|
using Microsoft.EntityFrameworkCore.Migrations; |
|
|
|
#nullable disable |
|
|
|
namespace ErsatzTV.Infrastructure.MySql.Migrations |
|
{ |
|
/// <inheritdoc /> |
|
public partial class Initial : Migration |
|
{ |
|
/// <inheritdoc /> |
|
protected override void Up(MigrationBuilder migrationBuilder) |
|
{ |
|
migrationBuilder.AlterDatabase() |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ChannelWatermark", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Mode = table.Column<int>(type: "int", nullable: false), |
|
ImageSource = table.Column<int>(type: "int", nullable: false), |
|
Image = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Location = table.Column<int>(type: "int", nullable: false), |
|
Size = table.Column<int>(type: "int", nullable: false), |
|
WidthPercent = table.Column<int>(type: "int", nullable: false), |
|
HorizontalMarginPercent = table.Column<int>(type: "int", nullable: false), |
|
VerticalMarginPercent = table.Column<int>(type: "int", nullable: false), |
|
FrequencyMinutes = table.Column<int>(type: "int", nullable: false), |
|
DurationSeconds = table.Column<int>(type: "int", nullable: false), |
|
Opacity = table.Column<int>(type: "int", nullable: false), |
|
PlaceWithinSourceContent = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ChannelWatermark", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Collection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
UseCustomPlaybackOrder = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Collection", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ConfigElement", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Key = table.Column<string>(type: "varchar(255)", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Value = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ConfigElement", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyCollection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyCollection", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinCollection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinCollection", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "LanguageCode", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ThreeCode1 = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ThreeCode2 = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
TwoCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EnglishName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
FrenchName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_LanguageCode", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaSource", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaSource", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MultiCollection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MultiCollection", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramSchedule", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "varchar(255)", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
KeepMultiPartEpisodesTogether = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
TreatCollectionsAsShows = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
ShuffleScheduleItems = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
RandomStartPoint = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramSchedule", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Resolution", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
IsCustom = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
|
Height = table.Column<int>(type: "int", nullable: false), |
|
Width = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Resolution", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "SmartCollection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Query = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_SmartCollection", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "TraktList", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
TraktId = table.Column<int>(type: "int", nullable: false), |
|
User = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
List = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Description = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ItemCount = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_TraktList", x => x.Id); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyMediaSource", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ServerName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OperatingSystem = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LastCollectionsScan = table.Column<DateTime>(type: "datetime(6)", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyMediaSource", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyMediaSource_MediaSource_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinMediaSource", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ServerName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OperatingSystem = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinMediaSource", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinMediaSource_MediaSource_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Library", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MediaKind = table.Column<int>(type: "int", nullable: false), |
|
LastScan = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
MediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Library", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Library_MediaSource_MediaSourceId", |
|
column: x => x.MediaSourceId, |
|
principalTable: "MediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "LocalMediaSource", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_LocalMediaSource", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_LocalMediaSource_MediaSource_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexMediaSource", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ServerName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ProductVersion = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Platform = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PlatformVersion = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ClientIdentifier = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexMediaSource", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexMediaSource_MediaSource_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MultiCollectionItem", |
|
columns: table => new |
|
{ |
|
MultiCollectionId = table.Column<int>(type: "int", nullable: false), |
|
CollectionId = table.Column<int>(type: "int", nullable: false), |
|
ScheduleAsGroup = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
PlaybackOrder = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MultiCollectionItem", x => new { x.MultiCollectionId, x.CollectionId }); |
|
table.ForeignKey( |
|
name: "FK_MultiCollectionItem_Collection_CollectionId", |
|
column: x => x.CollectionId, |
|
principalTable: "Collection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MultiCollectionItem_MultiCollection_MultiCollectionId", |
|
column: x => x.MultiCollectionId, |
|
principalTable: "MultiCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "FFmpegProfile", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ThreadCount = table.Column<int>(type: "int", nullable: false), |
|
HardwareAcceleration = table.Column<int>(type: "int", nullable: false), |
|
VaapiDriver = table.Column<int>(type: "int", nullable: false), |
|
VaapiDevice = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
QsvExtraHardwareFrames = table.Column<int>(type: "int", nullable: true), |
|
ResolutionId = table.Column<int>(type: "int", nullable: false), |
|
VideoFormat = table.Column<int>(type: "int", nullable: false), |
|
BitDepth = table.Column<int>(type: "int", nullable: false), |
|
VideoBitrate = table.Column<int>(type: "int", nullable: false), |
|
VideoBufferSize = table.Column<int>(type: "int", nullable: false), |
|
AudioFormat = table.Column<int>(type: "int", nullable: false), |
|
AudioBitrate = table.Column<int>(type: "int", nullable: false), |
|
AudioBufferSize = table.Column<int>(type: "int", nullable: false), |
|
NormalizeLoudness = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
AudioChannels = table.Column<int>(type: "int", nullable: false), |
|
AudioSampleRate = table.Column<int>(type: "int", nullable: false), |
|
NormalizeFramerate = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
|
DeinterlaceVideo = table.Column<bool>(type: "tinyint(1)", nullable: true, defaultValue: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_FFmpegProfile", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_FFmpegProfile_Resolution_ResolutionId", |
|
column: x => x.ResolutionId, |
|
principalTable: "Resolution", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MultiCollectionSmartItem", |
|
columns: table => new |
|
{ |
|
MultiCollectionId = table.Column<int>(type: "int", nullable: false), |
|
SmartCollectionId = table.Column<int>(type: "int", nullable: false), |
|
ScheduleAsGroup = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
PlaybackOrder = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MultiCollectionSmartItem", x => new { x.MultiCollectionId, x.SmartCollectionId }); |
|
table.ForeignKey( |
|
name: "FK_MultiCollectionSmartItem_MultiCollection_MultiCollectionId", |
|
column: x => x.MultiCollectionId, |
|
principalTable: "MultiCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MultiCollectionSmartItem_SmartCollection_SmartCollectionId", |
|
column: x => x.SmartCollectionId, |
|
principalTable: "SmartCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyConnection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Address = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EmbyMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyConnection", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyConnection_EmbyMediaSource_EmbyMediaSourceId", |
|
column: x => x.EmbyMediaSourceId, |
|
principalTable: "EmbyMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyPathReplacement", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
EmbyPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LocalPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EmbyMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyPathReplacement", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyPathReplacement_EmbyMediaSource_EmbyMediaSourceId", |
|
column: x => x.EmbyMediaSourceId, |
|
principalTable: "EmbyMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinConnection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Address = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
JellyfinMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinConnection", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinConnection_JellyfinMediaSource_JellyfinMediaSourceId", |
|
column: x => x.JellyfinMediaSourceId, |
|
principalTable: "JellyfinMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinPathReplacement", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
JellyfinPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LocalPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
JellyfinMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinPathReplacement", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinPathReplacement_JellyfinMediaSource_JellyfinMediaSou~", |
|
column: x => x.JellyfinMediaSourceId, |
|
principalTable: "JellyfinMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyLibrary", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ShouldSyncItems = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyLibrary", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyLibrary_Library_Id", |
|
column: x => x.Id, |
|
principalTable: "Library", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinLibrary", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ShouldSyncItems = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinLibrary", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinLibrary_Library_Id", |
|
column: x => x.Id, |
|
principalTable: "Library", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "LibraryPath", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LastScan = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
LibraryId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_LibraryPath", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_LibraryPath_Library_LibraryId", |
|
column: x => x.LibraryId, |
|
principalTable: "Library", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "LocalLibrary", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_LocalLibrary", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_LocalLibrary_Library_Id", |
|
column: x => x.Id, |
|
principalTable: "Library", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexLibrary", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ShouldSyncItems = table.Column<bool>(type: "tinyint(1)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexLibrary", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexLibrary_Library_Id", |
|
column: x => x.Id, |
|
principalTable: "Library", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexConnection", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
Uri = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PlexMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexConnection", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexConnection_PlexMediaSource_PlexMediaSourceId", |
|
column: x => x.PlexMediaSourceId, |
|
principalTable: "PlexMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexPathReplacement", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
PlexPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LocalPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PlexMediaSourceId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexPathReplacement", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexPathReplacement_PlexMediaSource_PlexMediaSourceId", |
|
column: x => x.PlexMediaSourceId, |
|
principalTable: "PlexMediaSource", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyPathInfo", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
NetworkPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EmbyLibraryId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyPathInfo", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyPathInfo_EmbyLibrary_EmbyLibraryId", |
|
column: x => x.EmbyLibraryId, |
|
principalTable: "EmbyLibrary", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinPathInfo", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
NetworkPath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
JellyfinLibraryId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinPathInfo", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinPathInfo_JellyfinLibrary_JellyfinLibraryId", |
|
column: x => x.JellyfinLibraryId, |
|
principalTable: "JellyfinLibrary", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "LibraryFolder", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
LibraryPathId = table.Column<int>(type: "int", nullable: false), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_LibraryFolder", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_LibraryFolder_LibraryPath_LibraryPathId", |
|
column: x => x.LibraryPathId, |
|
principalTable: "LibraryPath", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
LibraryPathId = table.Column<int>(type: "int", nullable: false), |
|
State = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MediaItem_LibraryPath_LibraryPathId", |
|
column: x => x.LibraryPathId, |
|
principalTable: "LibraryPath", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Artist", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Artist", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Artist_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "CollectionItem", |
|
columns: table => new |
|
{ |
|
CollectionId = table.Column<int>(type: "int", nullable: false), |
|
MediaItemId = table.Column<int>(type: "int", nullable: false), |
|
CustomIndex = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_CollectionItem", x => new { x.CollectionId, x.MediaItemId }); |
|
table.ForeignKey( |
|
name: "FK_CollectionItem_Collection_CollectionId", |
|
column: x => x.CollectionId, |
|
principalTable: "Collection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_CollectionItem_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "FillerPreset", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
FillerKind = table.Column<int>(type: "int", nullable: false), |
|
FillerMode = table.Column<int>(type: "int", nullable: false), |
|
Duration = table.Column<TimeSpan>(type: "time(6)", nullable: true), |
|
Count = table.Column<int>(type: "int", nullable: true), |
|
PadToNearestMinute = table.Column<int>(type: "int", nullable: true), |
|
AllowWatermarks = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
CollectionType = table.Column<int>(type: "int", nullable: false), |
|
CollectionId = table.Column<int>(type: "int", nullable: true), |
|
MediaItemId = table.Column<int>(type: "int", nullable: true), |
|
MultiCollectionId = table.Column<int>(type: "int", nullable: true), |
|
SmartCollectionId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_FillerPreset", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_FillerPreset_Collection_CollectionId", |
|
column: x => x.CollectionId, |
|
principalTable: "Collection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_FillerPreset_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_FillerPreset_MultiCollection_MultiCollectionId", |
|
column: x => x.MultiCollectionId, |
|
principalTable: "MultiCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_FillerPreset_SmartCollection_SmartCollectionId", |
|
column: x => x.SmartCollectionId, |
|
principalTable: "SmartCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Movie", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Movie", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Movie_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "OtherVideo", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_OtherVideo", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_OtherVideo_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Show", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Show", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Show_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Song", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Song", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Song_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "TraktListItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
TraktListId = table.Column<int>(type: "int", nullable: false), |
|
Kind = table.Column<int>(type: "int", nullable: false), |
|
TraktId = table.Column<int>(type: "int", nullable: false), |
|
Rank = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
Season = table.Column<int>(type: "int", nullable: true), |
|
Episode = table.Column<int>(type: "int", nullable: true), |
|
MediaItemId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_TraktListItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_TraktListItem_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_TraktListItem_TraktList_TraktListId", |
|
column: x => x.TraktListId, |
|
principalTable: "TraktList", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ArtistMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Disambiguation = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Biography = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Formed = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ArtistMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ArtistMetadata_Artist_ArtistId", |
|
column: x => x.ArtistId, |
|
principalTable: "Artist", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MusicVideo", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ArtistId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MusicVideo", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MusicVideo_Artist_ArtistId", |
|
column: x => x.ArtistId, |
|
principalTable: "Artist", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MusicVideo_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Channel", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
UniqueId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
|
Number = table.Column<string>(type: "varchar(255)", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Group = table.Column<string>(type: "longtext", nullable: false, defaultValue: "ErsatzTV") |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Categories = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
FFmpegProfileId = table.Column<int>(type: "int", nullable: false), |
|
WatermarkId = table.Column<int>(type: "int", nullable: true), |
|
FallbackFillerId = table.Column<int>(type: "int", nullable: true), |
|
StreamingMode = table.Column<int>(type: "int", nullable: false), |
|
PreferredAudioLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredAudioTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredSubtitleLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SubtitleMode = table.Column<int>(type: "int", nullable: false), |
|
MusicVideoCreditsMode = table.Column<int>(type: "int", nullable: false), |
|
MusicVideoCreditsTemplate = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Channel", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Channel_ChannelWatermark_WatermarkId", |
|
column: x => x.WatermarkId, |
|
principalTable: "ChannelWatermark", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_Channel_FFmpegProfile_FFmpegProfileId", |
|
column: x => x.FFmpegProfileId, |
|
principalTable: "FFmpegProfile", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Channel_FillerPreset_FallbackFillerId", |
|
column: x => x.FallbackFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Index = table.Column<int>(type: "int", nullable: false), |
|
StartTime = table.Column<TimeSpan>(type: "time(6)", nullable: true), |
|
CollectionType = table.Column<int>(type: "int", nullable: false), |
|
GuideMode = table.Column<int>(type: "int", nullable: false), |
|
CustomTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ProgramScheduleId = table.Column<int>(type: "int", nullable: false), |
|
CollectionId = table.Column<int>(type: "int", nullable: true), |
|
MediaItemId = table.Column<int>(type: "int", nullable: true), |
|
MultiCollectionId = table.Column<int>(type: "int", nullable: true), |
|
SmartCollectionId = table.Column<int>(type: "int", nullable: true), |
|
PlaybackOrder = table.Column<int>(type: "int", nullable: false), |
|
PreRollFillerId = table.Column<int>(type: "int", nullable: true), |
|
MidRollFillerId = table.Column<int>(type: "int", nullable: true), |
|
PostRollFillerId = table.Column<int>(type: "int", nullable: true), |
|
TailFillerId = table.Column<int>(type: "int", nullable: true), |
|
FallbackFillerId = table.Column<int>(type: "int", nullable: true), |
|
WatermarkId = table.Column<int>(type: "int", nullable: true), |
|
PreferredAudioLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredAudioTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredSubtitleLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SubtitleMode = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_ChannelWatermark_WatermarkId", |
|
column: x => x.WatermarkId, |
|
principalTable: "ChannelWatermark", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_Collection_CollectionId", |
|
column: x => x.CollectionId, |
|
principalTable: "Collection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_FillerPreset_FallbackFillerId", |
|
column: x => x.FallbackFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_FillerPreset_MidRollFillerId", |
|
column: x => x.MidRollFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_FillerPreset_PostRollFillerId", |
|
column: x => x.PostRollFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_FillerPreset_PreRollFillerId", |
|
column: x => x.PreRollFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_FillerPreset_TailFillerId", |
|
column: x => x.TailFillerId, |
|
principalTable: "FillerPreset", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_MultiCollection_MultiCollectionId", |
|
column: x => x.MultiCollectionId, |
|
principalTable: "MultiCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_ProgramSchedule_ProgramScheduleId", |
|
column: x => x.ProgramScheduleId, |
|
principalTable: "ProgramSchedule", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleItem_SmartCollection_SmartCollectionId", |
|
column: x => x.SmartCollectionId, |
|
principalTable: "SmartCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyMovie", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyMovie", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyMovie_Movie_Id", |
|
column: x => x.Id, |
|
principalTable: "Movie", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinMovie", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinMovie", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinMovie_Movie_Id", |
|
column: x => x.Id, |
|
principalTable: "Movie", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MovieMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ContentRating = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Outline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Plot = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Tagline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MovieId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MovieMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MovieMetadata_Movie_MovieId", |
|
column: x => x.MovieId, |
|
principalTable: "Movie", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexMovie", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexMovie", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexMovie_Movie_Id", |
|
column: x => x.Id, |
|
principalTable: "Movie", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "OtherVideoMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ContentRating = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Outline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Plot = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Tagline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OtherVideoId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_OtherVideoMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_OtherVideoMetadata_OtherVideo_OtherVideoId", |
|
column: x => x.OtherVideoId, |
|
principalTable: "OtherVideo", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyShow", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyShow", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyShow_Show_Id", |
|
column: x => x.Id, |
|
principalTable: "Show", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinShow", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinShow", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinShow_Show_Id", |
|
column: x => x.Id, |
|
principalTable: "Show", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexShow", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexShow", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexShow_Show_Id", |
|
column: x => x.Id, |
|
principalTable: "Show", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Season", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
SeasonNumber = table.Column<int>(type: "int", nullable: false), |
|
ShowId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Season", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Season_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Season_Show_ShowId", |
|
column: x => x.ShowId, |
|
principalTable: "Show", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ShowMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ContentRating = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Outline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Plot = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Tagline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ShowId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ShowMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ShowMetadata_Show_ShowId", |
|
column: x => x.ShowId, |
|
principalTable: "Show", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "SongMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Album = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Artist = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
AlbumArtist = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Date = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Track = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SongId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_SongMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_SongMetadata_Song_SongId", |
|
column: x => x.SongId, |
|
principalTable: "Song", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "TraktListItemGuid", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Guid = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
TraktListItemId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_TraktListItemGuid", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_TraktListItemGuid_TraktListItem_TraktListItemId", |
|
column: x => x.TraktListItemId, |
|
principalTable: "TraktListItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Mood", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Mood", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Mood_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Style", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Style", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Style_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MusicVideoMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Album = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Plot = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Track = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MusicVideoMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MusicVideoMetadata_MusicVideo_MusicVideoId", |
|
column: x => x.MusicVideoId, |
|
principalTable: "MusicVideo", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Playout", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
ChannelId = table.Column<int>(type: "int", nullable: false), |
|
ProgramScheduleId = table.Column<int>(type: "int", nullable: false), |
|
ProgramSchedulePlayoutType = table.Column<int>(type: "int", nullable: false), |
|
DailyRebuildTime = table.Column<TimeSpan>(type: "time(6)", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Playout", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Playout_Channel_ChannelId", |
|
column: x => x.ChannelId, |
|
principalTable: "Channel", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Playout_ProgramSchedule_ProgramScheduleId", |
|
column: x => x.ProgramScheduleId, |
|
principalTable: "ProgramSchedule", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleDurationItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
PlayoutDuration = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
TailMode = table.Column<int>(type: "int", nullable: false), |
|
DiscardToFillAttempts = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleDurationItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleDurationItem_ProgramScheduleItem_Id", |
|
column: x => x.Id, |
|
principalTable: "ProgramScheduleItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleFloodItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleFloodItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleFloodItem_ProgramScheduleItem_Id", |
|
column: x => x.Id, |
|
principalTable: "ProgramScheduleItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleMultipleItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Count = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleMultipleItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleMultipleItem_ProgramScheduleItem_Id", |
|
column: x => x.Id, |
|
principalTable: "ProgramScheduleItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleOneItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleOneItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleOneItem_ProgramScheduleItem_Id", |
|
column: x => x.Id, |
|
principalTable: "ProgramScheduleItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbySeason", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbySeason", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbySeason_Season_Id", |
|
column: x => x.Id, |
|
principalTable: "Season", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Episode", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
SeasonId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Episode", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Episode_MediaItem_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Episode_Season_SeasonId", |
|
column: x => x.SeasonId, |
|
principalTable: "Season", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinSeason", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinSeason", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinSeason_Season_Id", |
|
column: x => x.Id, |
|
principalTable: "Season", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexSeason", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexSeason", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexSeason_Season_Id", |
|
column: x => x.Id, |
|
principalTable: "Season", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "SeasonMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Outline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SeasonId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_SeasonMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_SeasonMetadata_Season_SeasonId", |
|
column: x => x.SeasonId, |
|
principalTable: "Season", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MusicVideoArtist", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MusicVideoArtist", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MusicVideoArtist_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlayoutAnchor", |
|
columns: table => new |
|
{ |
|
PlayoutId = table.Column<int>(type: "int", nullable: false), |
|
NextStart = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
MultipleRemaining = table.Column<int>(type: "int", nullable: true), |
|
DurationFinish = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
InFlood = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
InDurationFiller = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
NextGuideGroup = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlayoutAnchor", x => x.PlayoutId); |
|
table.ForeignKey( |
|
name: "FK_PlayoutAnchor_Playout_PlayoutId", |
|
column: x => x.PlayoutId, |
|
principalTable: "Playout", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlayoutItem", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
MediaItemId = table.Column<int>(type: "int", nullable: false), |
|
Start = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
Finish = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
GuideFinish = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
CustomTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
GuideGroup = table.Column<int>(type: "int", nullable: false), |
|
FillerKind = table.Column<int>(type: "int", nullable: false), |
|
PlayoutId = table.Column<int>(type: "int", nullable: false), |
|
InPoint = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
OutPoint = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
ChapterTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
WatermarkId = table.Column<int>(type: "int", nullable: true), |
|
DisableWatermarks = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
PreferredAudioLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredAudioTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
PreferredSubtitleLanguageCode = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SubtitleMode = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlayoutItem", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlayoutItem_ChannelWatermark_WatermarkId", |
|
column: x => x.WatermarkId, |
|
principalTable: "ChannelWatermark", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.SetNull); |
|
table.ForeignKey( |
|
name: "FK_PlayoutItem_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_PlayoutItem_Playout_PlayoutId", |
|
column: x => x.PlayoutId, |
|
principalTable: "Playout", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlayoutProgramScheduleAnchor", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
PlayoutId = table.Column<int>(type: "int", nullable: false), |
|
AnchorDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
CollectionType = table.Column<int>(type: "int", nullable: false), |
|
CollectionId = table.Column<int>(type: "int", nullable: true), |
|
MultiCollectionId = table.Column<int>(type: "int", nullable: true), |
|
SmartCollectionId = table.Column<int>(type: "int", nullable: true), |
|
MediaItemId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlayoutProgramScheduleAnchor", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlayoutProgramScheduleAnchor_Collection_CollectionId", |
|
column: x => x.CollectionId, |
|
principalTable: "Collection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_PlayoutProgramScheduleAnchor_MediaItem_MediaItemId", |
|
column: x => x.MediaItemId, |
|
principalTable: "MediaItem", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_PlayoutProgramScheduleAnchor_MultiCollection_MultiCollection~", |
|
column: x => x.MultiCollectionId, |
|
principalTable: "MultiCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_PlayoutProgramScheduleAnchor_Playout_PlayoutId", |
|
column: x => x.PlayoutId, |
|
principalTable: "Playout", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_PlayoutProgramScheduleAnchor_SmartCollection_SmartCollection~", |
|
column: x => x.SmartCollectionId, |
|
principalTable: "SmartCollection", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ProgramScheduleAlternate", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
PlayoutId = table.Column<int>(type: "int", nullable: false), |
|
ProgramScheduleId = table.Column<int>(type: "int", nullable: false), |
|
Index = table.Column<int>(type: "int", nullable: false), |
|
DaysOfWeek = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
DaysOfMonth = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MonthsOfYear = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ProgramScheduleAlternate", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleAlternate_Playout_PlayoutId", |
|
column: x => x.PlayoutId, |
|
principalTable: "Playout", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_ProgramScheduleAlternate_ProgramSchedule_ProgramScheduleId", |
|
column: x => x.ProgramScheduleId, |
|
principalTable: "ProgramSchedule", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EmbyEpisode", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EmbyEpisode", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EmbyEpisode_Episode_Id", |
|
column: x => x.Id, |
|
principalTable: "Episode", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "EpisodeMetadata", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
EpisodeNumber = table.Column<int>(type: "int", nullable: false), |
|
Outline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Plot = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Tagline = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EpisodeId = table.Column<int>(type: "int", nullable: false), |
|
MetadataKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
OriginalTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SortTitle = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Year = table.Column<int>(type: "int", nullable: true), |
|
ReleaseDate = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_EpisodeMetadata", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_EpisodeMetadata_Episode_EpisodeId", |
|
column: x => x.EpisodeId, |
|
principalTable: "Episode", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "JellyfinEpisode", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
ItemId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_JellyfinEpisode", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_JellyfinEpisode_Episode_Id", |
|
column: x => x.Id, |
|
principalTable: "Episode", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaVersion", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Duration = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
SampleAspectRatio = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
DisplayAspectRatio = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
RFrameRate = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
VideoScanKind = table.Column<int>(type: "int", nullable: false), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
Width = table.Column<int>(type: "int", nullable: false), |
|
Height = table.Column<int>(type: "int", nullable: false), |
|
EpisodeId = table.Column<int>(type: "int", nullable: true), |
|
MovieId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoId = table.Column<int>(type: "int", nullable: true), |
|
SongId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaVersion", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MediaVersion_Episode_EpisodeId", |
|
column: x => x.EpisodeId, |
|
principalTable: "Episode", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MediaVersion_Movie_MovieId", |
|
column: x => x.MovieId, |
|
principalTable: "Movie", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MediaVersion_MusicVideo_MusicVideoId", |
|
column: x => x.MusicVideoId, |
|
principalTable: "MusicVideo", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MediaVersion_OtherVideo_OtherVideoId", |
|
column: x => x.OtherVideoId, |
|
principalTable: "OtherVideo", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MediaVersion_Song_SongId", |
|
column: x => x.SongId, |
|
principalTable: "Song", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexEpisode", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Etag = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexEpisode", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexEpisode_Episode_Id", |
|
column: x => x.Id, |
|
principalTable: "Episode", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "ScheduleItemsEnumeratorState", |
|
columns: table => new |
|
{ |
|
PlayoutAnchorPlayoutId = table.Column<int>(type: "int", nullable: false), |
|
Seed = table.Column<int>(type: "int", nullable: false), |
|
Index = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_ScheduleItemsEnumeratorState", x => x.PlayoutAnchorPlayoutId); |
|
table.ForeignKey( |
|
name: "FK_ScheduleItemsEnumeratorState_PlayoutAnchor_PlayoutAnchorPlay~", |
|
column: x => x.PlayoutAnchorPlayoutId, |
|
principalTable: "PlayoutAnchor", |
|
principalColumn: "PlayoutId", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "CollectionEnumeratorState", |
|
columns: table => new |
|
{ |
|
PlayoutProgramScheduleAnchorId = table.Column<int>(type: "int", nullable: false), |
|
Seed = table.Column<int>(type: "int", nullable: false), |
|
Index = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_CollectionEnumeratorState", x => x.PlayoutProgramScheduleAnchorId); |
|
table.ForeignKey( |
|
name: "FK_CollectionEnumeratorState_PlayoutProgramScheduleAnchor_Playo~", |
|
column: x => x.PlayoutProgramScheduleAnchorId, |
|
principalTable: "PlayoutProgramScheduleAnchor", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Artwork", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
SourcePath = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
BlurHash43 = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
BlurHash54 = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
BlurHash64 = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtworkKind = table.Column<int>(type: "int", nullable: false), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ChannelId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Artwork", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Artwork_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_Channel_ChannelId", |
|
column: x => x.ChannelId, |
|
principalTable: "Channel", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Artwork_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Director", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Director", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Director_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Director_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Director_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Director_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Genre", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Genre", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Genre_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Genre_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MetadataGuid", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Guid = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MetadataGuid", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_MetadataGuid_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Studio", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Studio", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Studio_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Studio_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Subtitle", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
SubtitleKind = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
StreamIndex = table.Column<int>(type: "int", nullable: false), |
|
Codec = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Default = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
Forced = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
SDH = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
|
Language = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
IsExtracted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
|
Path = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
DateAdded = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
DateUpdated = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Subtitle", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Subtitle_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Tag", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ExternalCollectionId = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Tag", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Tag_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Tag_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Writer", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Writer", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Writer_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Writer_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Writer_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaChapter", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
MediaVersionId = table.Column<int>(type: "int", nullable: false), |
|
ChapterId = table.Column<long>(type: "bigint", nullable: false), |
|
StartTime = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
EndTime = table.Column<TimeSpan>(type: "time(6)", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaChapter", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MediaChapter_MediaVersion_MediaVersionId", |
|
column: x => x.MediaVersionId, |
|
principalTable: "MediaVersion", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaFile", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Path = table.Column<string>(type: "varchar(255)", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MediaVersionId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaFile", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MediaFile_MediaVersion_MediaVersionId", |
|
column: x => x.MediaVersionId, |
|
principalTable: "MediaVersion", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "MediaStream", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Index = table.Column<int>(type: "int", nullable: false), |
|
Codec = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Profile = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MediaStreamKind = table.Column<int>(type: "int", nullable: false), |
|
Language = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Channels = table.Column<int>(type: "int", nullable: false), |
|
Title = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Default = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
Forced = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
AttachedPic = table.Column<bool>(type: "tinyint(1)", nullable: false), |
|
PixelFormat = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ColorRange = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ColorSpace = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ColorTransfer = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
ColorPrimaries = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
BitsPerRawSample = table.Column<int>(type: "int", nullable: false), |
|
FileName = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MimeType = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
MediaVersionId = table.Column<int>(type: "int", nullable: false) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_MediaStream", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_MediaStream_MediaVersion_MediaVersionId", |
|
column: x => x.MediaVersionId, |
|
principalTable: "MediaVersion", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "Actor", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false) |
|
.Annotation("MySql:ValueGenerationStrategy", MySqlValueGenerationStrategy.IdentityColumn), |
|
Name = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Role = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4"), |
|
Order = table.Column<int>(type: "int", nullable: true), |
|
ArtworkId = table.Column<int>(type: "int", nullable: true), |
|
ArtistMetadataId = table.Column<int>(type: "int", nullable: true), |
|
EpisodeMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MovieMetadataId = table.Column<int>(type: "int", nullable: true), |
|
MusicVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
OtherVideoMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SeasonMetadataId = table.Column<int>(type: "int", nullable: true), |
|
ShowMetadataId = table.Column<int>(type: "int", nullable: true), |
|
SongMetadataId = table.Column<int>(type: "int", nullable: true) |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_Actor", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_Actor_ArtistMetadata_ArtistMetadataId", |
|
column: x => x.ArtistMetadataId, |
|
principalTable: "ArtistMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_Artwork_ArtworkId", |
|
column: x => x.ArtworkId, |
|
principalTable: "Artwork", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_EpisodeMetadata_EpisodeMetadataId", |
|
column: x => x.EpisodeMetadataId, |
|
principalTable: "EpisodeMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_MovieMetadata_MovieMetadataId", |
|
column: x => x.MovieMetadataId, |
|
principalTable: "MovieMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_MusicVideoMetadata_MusicVideoMetadataId", |
|
column: x => x.MusicVideoMetadataId, |
|
principalTable: "MusicVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_OtherVideoMetadata_OtherVideoMetadataId", |
|
column: x => x.OtherVideoMetadataId, |
|
principalTable: "OtherVideoMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_SeasonMetadata_SeasonMetadataId", |
|
column: x => x.SeasonMetadataId, |
|
principalTable: "SeasonMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_ShowMetadata_ShowMetadataId", |
|
column: x => x.ShowMetadataId, |
|
principalTable: "ShowMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
table.ForeignKey( |
|
name: "FK_Actor_SongMetadata_SongMetadataId", |
|
column: x => x.SongMetadataId, |
|
principalTable: "SongMetadata", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateTable( |
|
name: "PlexMediaFile", |
|
columns: table => new |
|
{ |
|
Id = table.Column<int>(type: "int", nullable: false), |
|
PlexId = table.Column<int>(type: "int", nullable: false), |
|
Key = table.Column<string>(type: "longtext", nullable: true) |
|
.Annotation("MySql:CharSet", "utf8mb4") |
|
}, |
|
constraints: table => |
|
{ |
|
table.PrimaryKey("PK_PlexMediaFile", x => x.Id); |
|
table.ForeignKey( |
|
name: "FK_PlexMediaFile_MediaFile_Id", |
|
column: x => x.Id, |
|
principalTable: "MediaFile", |
|
principalColumn: "Id", |
|
onDelete: ReferentialAction.Cascade); |
|
}) |
|
.Annotation("MySql:CharSet", "utf8mb4"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_ArtistMetadataId", |
|
table: "Actor", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_ArtworkId", |
|
table: "Actor", |
|
column: "ArtworkId", |
|
unique: true); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_EpisodeMetadataId", |
|
table: "Actor", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_MovieMetadataId", |
|
table: "Actor", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_MusicVideoMetadataId", |
|
table: "Actor", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_OtherVideoMetadataId", |
|
table: "Actor", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_SeasonMetadataId", |
|
table: "Actor", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_ShowMetadataId", |
|
table: "Actor", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Actor_SongMetadataId", |
|
table: "Actor", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ArtistMetadata_ArtistId", |
|
table: "ArtistMetadata", |
|
column: "ArtistId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_ArtistMetadataId", |
|
table: "Artwork", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_ChannelId", |
|
table: "Artwork", |
|
column: "ChannelId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_EpisodeMetadataId", |
|
table: "Artwork", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_MovieMetadataId", |
|
table: "Artwork", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_MusicVideoMetadataId", |
|
table: "Artwork", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_OtherVideoMetadataId", |
|
table: "Artwork", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_SeasonMetadataId", |
|
table: "Artwork", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_ShowMetadataId", |
|
table: "Artwork", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Artwork_SongMetadataId", |
|
table: "Artwork", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Channel_FallbackFillerId", |
|
table: "Channel", |
|
column: "FallbackFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Channel_FFmpegProfileId", |
|
table: "Channel", |
|
column: "FFmpegProfileId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Channel_Number", |
|
table: "Channel", |
|
column: "Number", |
|
unique: true); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Channel_WatermarkId", |
|
table: "Channel", |
|
column: "WatermarkId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_CollectionItem_MediaItemId", |
|
table: "CollectionItem", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ConfigElement_Key", |
|
table: "ConfigElement", |
|
column: "Key", |
|
unique: true); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Director_EpisodeMetadataId", |
|
table: "Director", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Director_MovieMetadataId", |
|
table: "Director", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Director_MusicVideoMetadataId", |
|
table: "Director", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Director_OtherVideoMetadataId", |
|
table: "Director", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_EmbyConnection_EmbyMediaSourceId", |
|
table: "EmbyConnection", |
|
column: "EmbyMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_EmbyPathInfo_EmbyLibraryId", |
|
table: "EmbyPathInfo", |
|
column: "EmbyLibraryId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_EmbyPathReplacement_EmbyMediaSourceId", |
|
table: "EmbyPathReplacement", |
|
column: "EmbyMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Episode_SeasonId", |
|
table: "Episode", |
|
column: "SeasonId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_EpisodeMetadata_EpisodeId", |
|
table: "EpisodeMetadata", |
|
column: "EpisodeId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_FFmpegProfile_ResolutionId", |
|
table: "FFmpegProfile", |
|
column: "ResolutionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_FillerPreset_CollectionId", |
|
table: "FillerPreset", |
|
column: "CollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_FillerPreset_MediaItemId", |
|
table: "FillerPreset", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_FillerPreset_MultiCollectionId", |
|
table: "FillerPreset", |
|
column: "MultiCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_FillerPreset_SmartCollectionId", |
|
table: "FillerPreset", |
|
column: "SmartCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_ArtistMetadataId", |
|
table: "Genre", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_EpisodeMetadataId", |
|
table: "Genre", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_MovieMetadataId", |
|
table: "Genre", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_MusicVideoMetadataId", |
|
table: "Genre", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_OtherVideoMetadataId", |
|
table: "Genre", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_SeasonMetadataId", |
|
table: "Genre", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_ShowMetadataId", |
|
table: "Genre", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Genre_SongMetadataId", |
|
table: "Genre", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_JellyfinConnection_JellyfinMediaSourceId", |
|
table: "JellyfinConnection", |
|
column: "JellyfinMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_JellyfinPathInfo_JellyfinLibraryId", |
|
table: "JellyfinPathInfo", |
|
column: "JellyfinLibraryId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_JellyfinPathReplacement_JellyfinMediaSourceId", |
|
table: "JellyfinPathReplacement", |
|
column: "JellyfinMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Library_MediaSourceId", |
|
table: "Library", |
|
column: "MediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_LibraryFolder_LibraryPathId", |
|
table: "LibraryFolder", |
|
column: "LibraryPathId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_LibraryPath_LibraryId", |
|
table: "LibraryPath", |
|
column: "LibraryId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaChapter_MediaVersionId", |
|
table: "MediaChapter", |
|
column: "MediaVersionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaFile_MediaVersionId", |
|
table: "MediaFile", |
|
column: "MediaVersionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaFile_Path", |
|
table: "MediaFile", |
|
column: "Path", |
|
unique: true); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaItem_LibraryPathId", |
|
table: "MediaItem", |
|
column: "LibraryPathId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaStream_MediaVersionId", |
|
table: "MediaStream", |
|
column: "MediaVersionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaVersion_EpisodeId", |
|
table: "MediaVersion", |
|
column: "EpisodeId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaVersion_MovieId", |
|
table: "MediaVersion", |
|
column: "MovieId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaVersion_MusicVideoId", |
|
table: "MediaVersion", |
|
column: "MusicVideoId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaVersion_OtherVideoId", |
|
table: "MediaVersion", |
|
column: "OtherVideoId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MediaVersion_SongId", |
|
table: "MediaVersion", |
|
column: "SongId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_ArtistMetadataId", |
|
table: "MetadataGuid", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_EpisodeMetadataId", |
|
table: "MetadataGuid", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_MovieMetadataId", |
|
table: "MetadataGuid", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_MusicVideoMetadataId", |
|
table: "MetadataGuid", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_OtherVideoMetadataId", |
|
table: "MetadataGuid", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_SeasonMetadataId", |
|
table: "MetadataGuid", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_ShowMetadataId", |
|
table: "MetadataGuid", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MetadataGuid_SongMetadataId", |
|
table: "MetadataGuid", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Mood_ArtistMetadataId", |
|
table: "Mood", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MovieMetadata_MovieId", |
|
table: "MovieMetadata", |
|
column: "MovieId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MultiCollectionItem_CollectionId", |
|
table: "MultiCollectionItem", |
|
column: "CollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MultiCollectionSmartItem_SmartCollectionId", |
|
table: "MultiCollectionSmartItem", |
|
column: "SmartCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MusicVideo_ArtistId", |
|
table: "MusicVideo", |
|
column: "ArtistId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MusicVideoArtist_MusicVideoMetadataId", |
|
table: "MusicVideoArtist", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_MusicVideoMetadata_MusicVideoId", |
|
table: "MusicVideoMetadata", |
|
column: "MusicVideoId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_OtherVideoMetadata_OtherVideoId", |
|
table: "OtherVideoMetadata", |
|
column: "OtherVideoId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Playout_ChannelId", |
|
table: "Playout", |
|
column: "ChannelId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Playout_ProgramScheduleId", |
|
table: "Playout", |
|
column: "ProgramScheduleId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutItem_MediaItemId", |
|
table: "PlayoutItem", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutItem_PlayoutId", |
|
table: "PlayoutItem", |
|
column: "PlayoutId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutItem_WatermarkId", |
|
table: "PlayoutItem", |
|
column: "WatermarkId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutProgramScheduleAnchor_CollectionId", |
|
table: "PlayoutProgramScheduleAnchor", |
|
column: "CollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutProgramScheduleAnchor_MediaItemId", |
|
table: "PlayoutProgramScheduleAnchor", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutProgramScheduleAnchor_MultiCollectionId", |
|
table: "PlayoutProgramScheduleAnchor", |
|
column: "MultiCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutProgramScheduleAnchor_PlayoutId", |
|
table: "PlayoutProgramScheduleAnchor", |
|
column: "PlayoutId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlayoutProgramScheduleAnchor_SmartCollectionId", |
|
table: "PlayoutProgramScheduleAnchor", |
|
column: "SmartCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlexConnection_PlexMediaSourceId", |
|
table: "PlexConnection", |
|
column: "PlexMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_PlexPathReplacement_PlexMediaSourceId", |
|
table: "PlexPathReplacement", |
|
column: "PlexMediaSourceId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramSchedule_Name", |
|
table: "ProgramSchedule", |
|
column: "Name", |
|
unique: true); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleAlternate_PlayoutId", |
|
table: "ProgramScheduleAlternate", |
|
column: "PlayoutId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleAlternate_ProgramScheduleId", |
|
table: "ProgramScheduleAlternate", |
|
column: "ProgramScheduleId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_CollectionId", |
|
table: "ProgramScheduleItem", |
|
column: "CollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_FallbackFillerId", |
|
table: "ProgramScheduleItem", |
|
column: "FallbackFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_MediaItemId", |
|
table: "ProgramScheduleItem", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_MidRollFillerId", |
|
table: "ProgramScheduleItem", |
|
column: "MidRollFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_MultiCollectionId", |
|
table: "ProgramScheduleItem", |
|
column: "MultiCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_PostRollFillerId", |
|
table: "ProgramScheduleItem", |
|
column: "PostRollFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_PreRollFillerId", |
|
table: "ProgramScheduleItem", |
|
column: "PreRollFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_ProgramScheduleId", |
|
table: "ProgramScheduleItem", |
|
column: "ProgramScheduleId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_SmartCollectionId", |
|
table: "ProgramScheduleItem", |
|
column: "SmartCollectionId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_TailFillerId", |
|
table: "ProgramScheduleItem", |
|
column: "TailFillerId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ProgramScheduleItem_WatermarkId", |
|
table: "ProgramScheduleItem", |
|
column: "WatermarkId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Season_ShowId", |
|
table: "Season", |
|
column: "ShowId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_SeasonMetadata_SeasonId", |
|
table: "SeasonMetadata", |
|
column: "SeasonId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_ShowMetadata_ShowId", |
|
table: "ShowMetadata", |
|
column: "ShowId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_SongMetadata_SongId", |
|
table: "SongMetadata", |
|
column: "SongId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_ArtistMetadataId", |
|
table: "Studio", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_EpisodeMetadataId", |
|
table: "Studio", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_MovieMetadataId", |
|
table: "Studio", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_MusicVideoMetadataId", |
|
table: "Studio", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_OtherVideoMetadataId", |
|
table: "Studio", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_SeasonMetadataId", |
|
table: "Studio", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_ShowMetadataId", |
|
table: "Studio", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Studio_SongMetadataId", |
|
table: "Studio", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Style_ArtistMetadataId", |
|
table: "Style", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_ArtistMetadataId", |
|
table: "Subtitle", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_EpisodeMetadataId", |
|
table: "Subtitle", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_MovieMetadataId", |
|
table: "Subtitle", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_MusicVideoMetadataId", |
|
table: "Subtitle", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_OtherVideoMetadataId", |
|
table: "Subtitle", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_SeasonMetadataId", |
|
table: "Subtitle", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_ShowMetadataId", |
|
table: "Subtitle", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Subtitle_SongMetadataId", |
|
table: "Subtitle", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_ArtistMetadataId", |
|
table: "Tag", |
|
column: "ArtistMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_EpisodeMetadataId", |
|
table: "Tag", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_MovieMetadataId", |
|
table: "Tag", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_MusicVideoMetadataId", |
|
table: "Tag", |
|
column: "MusicVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_OtherVideoMetadataId", |
|
table: "Tag", |
|
column: "OtherVideoMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_SeasonMetadataId", |
|
table: "Tag", |
|
column: "SeasonMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_ShowMetadataId", |
|
table: "Tag", |
|
column: "ShowMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Tag_SongMetadataId", |
|
table: "Tag", |
|
column: "SongMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_TraktListItem_MediaItemId", |
|
table: "TraktListItem", |
|
column: "MediaItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_TraktListItem_TraktListId", |
|
table: "TraktListItem", |
|
column: "TraktListId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_TraktListItemGuid_TraktListItemId", |
|
table: "TraktListItemGuid", |
|
column: "TraktListItemId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Writer_EpisodeMetadataId", |
|
table: "Writer", |
|
column: "EpisodeMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Writer_MovieMetadataId", |
|
table: "Writer", |
|
column: "MovieMetadataId"); |
|
|
|
migrationBuilder.CreateIndex( |
|
name: "IX_Writer_OtherVideoMetadataId", |
|
table: "Writer", |
|
column: "OtherVideoMetadataId"); |
|
} |
|
|
|
/// <inheritdoc /> |
|
protected override void Down(MigrationBuilder migrationBuilder) |
|
{ |
|
migrationBuilder.DropTable( |
|
name: "Actor"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "CollectionEnumeratorState"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "CollectionItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ConfigElement"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Director"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyCollection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyConnection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyEpisode"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyMovie"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyPathInfo"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyPathReplacement"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbySeason"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyShow"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Genre"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinCollection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinConnection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinEpisode"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinMovie"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinPathInfo"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinPathReplacement"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinSeason"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinShow"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "LanguageCode"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "LibraryFolder"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "LocalLibrary"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "LocalMediaSource"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaChapter"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaStream"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MetadataGuid"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Mood"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MultiCollectionItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MultiCollectionSmartItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MusicVideoArtist"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlayoutItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexConnection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexEpisode"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexLibrary"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexMediaFile"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexMovie"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexPathReplacement"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexSeason"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexShow"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleAlternate"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleDurationItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleFloodItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleMultipleItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleOneItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ScheduleItemsEnumeratorState"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Studio"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Style"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Subtitle"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Tag"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "TraktListItemGuid"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Writer"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Artwork"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlayoutProgramScheduleAnchor"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyLibrary"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EmbyMediaSource"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinLibrary"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "JellyfinMediaSource"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaFile"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlexMediaSource"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramScheduleItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "PlayoutAnchor"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "TraktListItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ArtistMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "EpisodeMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MovieMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MusicVideoMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "OtherVideoMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "SeasonMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ShowMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "SongMetadata"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaVersion"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Playout"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "TraktList"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Episode"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Movie"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MusicVideo"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "OtherVideo"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Song"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Channel"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ProgramSchedule"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Season"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Artist"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "ChannelWatermark"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "FFmpegProfile"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "FillerPreset"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Show"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Resolution"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Collection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MultiCollection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "SmartCollection"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaItem"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "LibraryPath"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "Library"); |
|
|
|
migrationBuilder.DropTable( |
|
name: "MediaSource"); |
|
} |
|
} |
|
}
|
|
|