Started the Split

Split Json data models coming from REST Api, from the Database models
storing them in a SQLite database.
Work to re-engineer endpoints to use Database objects, and copy/update
data from the json objects.
More work is needed.
This commit is contained in:
Mario Steele 2025-07-22 17:03:33 -05:00
parent 157d46ee2e
commit 4985dc4179
36 changed files with 684 additions and 323 deletions

View file

@ -16,7 +16,7 @@ namespace FreeTubeSync.Migrations
#pragma warning disable 612, 618
modelBuilder.HasAnnotation("ProductVersion", "9.0.7");
modelBuilder.Entity("FreeTubeSync.Model.History", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.History", b =>
{
b.Property<string>("_id")
.HasColumnType("TEXT");
@ -75,7 +75,7 @@ namespace FreeTubeSync.Migrations
b.ToTable("Histories");
});
modelBuilder.Entity("FreeTubeSync.Model.Playlist", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Playlist", b =>
{
b.Property<string>("_id")
.HasColumnType("TEXT");
@ -95,10 +95,10 @@ namespace FreeTubeSync.Migrations
b.HasKey("_id");
b.ToTable("Playlists", (string)null);
b.ToTable("Playlists");
});
modelBuilder.Entity("FreeTubeSync.Model.Profile", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Profile", b =>
{
b.Property<string>("_id")
.HasColumnType("TEXT");
@ -117,10 +117,10 @@ namespace FreeTubeSync.Migrations
b.HasKey("_id");
b.ToTable("Profiles", (string)null);
b.ToTable("Profiles");
});
modelBuilder.Entity("FreeTubeSync.Model.SearchHistory", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.SearchHistory", b =>
{
b.Property<string>("_id")
.HasColumnType("TEXT");
@ -133,22 +133,21 @@ namespace FreeTubeSync.Migrations
b.ToTable("SearchHistories");
});
modelBuilder.Entity("FreeTubeSync.Model.Setting", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Setting", b =>
{
b.Property<string>("_id")
.HasColumnType("TEXT");
b.Property<string>("ValueJson")
b.Property<string>("value")
.IsRequired()
.HasColumnType("TEXT")
.HasColumnName("Value");
.HasColumnType("TEXT");
b.HasKey("_id");
b.ToTable("Settings", (string)null);
b.ToTable("Settings");
});
modelBuilder.Entity("FreeTubeSync.Model.Subscription", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Subscription", b =>
{
b.Property<string>("id")
.HasColumnType("TEXT");
@ -170,7 +169,7 @@ namespace FreeTubeSync.Migrations
b.ToTable("Subscriptions");
});
modelBuilder.Entity("FreeTubeSync.Model.Video", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Video", b =>
{
b.Property<string>("playlistItemId")
.HasColumnType("TEXT");
@ -215,26 +214,26 @@ namespace FreeTubeSync.Migrations
b.ToTable("Videos");
});
modelBuilder.Entity("FreeTubeSync.Model.Subscription", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Subscription", b =>
{
b.HasOne("FreeTubeSync.Model.Profile", null)
b.HasOne("FreeTubeSync.Model.Database.Profile", null)
.WithMany("subscriptions")
.HasForeignKey("Profile_id");
});
modelBuilder.Entity("FreeTubeSync.Model.Video", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Video", b =>
{
b.HasOne("FreeTubeSync.Model.Playlist", null)
b.HasOne("FreeTubeSync.Model.Database.Playlist", null)
.WithMany("videos")
.HasForeignKey("Playlist_id");
});
modelBuilder.Entity("FreeTubeSync.Model.Playlist", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Playlist", b =>
{
b.Navigation("videos");
});
modelBuilder.Entity("FreeTubeSync.Model.Profile", b =>
modelBuilder.Entity("FreeTubeSync.Model.Database.Profile", b =>
{
b.Navigation("subscriptions");
});