fix(directory): 🐛 temporarily use public entity prop setters for <net5.0 System.Test.Json seeding support

This commit is contained in:
Collin M. Barrett 2020-08-27 16:32:45 -05:00
parent 3487c14af3
commit 8c4fb6dd89
15 changed files with 56 additions and 55 deletions

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Dependent
{
public int DependencyFilterListId { get; private set; }
public int DependencyFilterListId { get; set; }
public FilterList DependencyFilterList { get; private set; } = null!;
public int DependentFilterListId { get; private set; }
public int DependentFilterListId { get; set; }
public FilterList DependentFilterList { get; private set; } = null!;
}

View file

@ -7,24 +7,25 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterList
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public string? Description { get; private set; }
public int? LicenseId { get; private set; }
public License? License { get; private set; }
// TODO: use private setters on all entity props after System.Text.Json supports seeding in net5.0
public int Id { get; set; }
public string Name { get; set; } = null!;
public string? Description { get; set; }
public int? LicenseId { get; set; }
public License? License { get; set; }
public IReadOnlyCollection<FilterListSyntax> FilterListSyntaxes { get; private set; } = new HashSet<FilterListSyntax>();
public IReadOnlyCollection<FilterListLanguage> FilterListLanguages { get; private set; } = new HashSet<FilterListLanguage>();
public IReadOnlyCollection<FilterListTag> FilterListTags { get; private set; } = new HashSet<FilterListTag>();
public IReadOnlyCollection<FilterListViewUrl> ViewUrls { get; private set; } = new HashSet<FilterListViewUrl>();
public Uri? HomeUrl { get; private set; }
public Uri? OnionUrl { get; private set; }
public Uri? PolicyUrl { get; private set; }
public Uri? SubmissionUrl { get; private set; }
public Uri? IssuesUrl { get; private set; }
public Uri? ForumUrl { get; private set; }
public Uri? ChatUrl { get; private set; }
public string? EmailAddress { get; private set; }
public Uri? DonateUrl { get; private set; }
public Uri? HomeUrl { get; set; }
public Uri? OnionUrl { get; set; }
public Uri? PolicyUrl { get; set; }
public Uri? SubmissionUrl { get; set; }
public Uri? IssuesUrl { get; set; }
public Uri? ForumUrl { get; set; }
public Uri? ChatUrl { get; set; }
public string? EmailAddress { get; set; }
public Uri? DonateUrl { get; set; }
public IReadOnlyCollection<FilterListMaintainer> FilterListMaintainers { get; private set; } = new HashSet<FilterListMaintainer>();
public IReadOnlyCollection<Fork> UpstreamFilterLists { get; private set; } = new HashSet<Fork>();
public IReadOnlyCollection<Fork> ForkFilterLists { get; private set; } = new HashSet<Fork>();

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterListLanguage
{
public int FilterListId { get; private set; }
public int FilterListId { get; set; }
public FilterList FilterList { get; private set; } = null!;
public string Iso6391 { get; private set; } = null!;
public string Iso6391 { get; set; } = null!;
public Language Language { get; private set; } = null!;
}

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterListMaintainer
{
public int FilterListId { get; private set; }
public int FilterListId { get; set; }
public FilterList FilterList { get; private set; } = null!;
public int MaintainerId { get; private set; }
public int MaintainerId { get; set; }
public Maintainer Maintainer { get; private set; } = null!;
}

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterListSyntax
{
public int FilterListId { get; private set; }
public int FilterListId { get; set; }
public FilterList FilterList { get; private set; } = null!;
public int SyntaxId { get; private set; }
public int SyntaxId { get; set; }
public Syntax Syntax { get; private set; } = null!;
}

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterListTag
{
public int FilterListId { get; private set; }
public int FilterListId { get; set; }
public FilterList FilterList { get; private set; } = null!;
public int TagId { get; private set; }
public int TagId { get; set; }
public Tag Tag { get; private set; } = null!;
}

View file

@ -4,8 +4,8 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class FilterListViewUrl
{
public int SegmentNumber { get; private set; }
public int Primariness { get; private set; }
public Uri Url { get; private set; } = null!;
public int SegmentNumber { get; set; }
public int Primariness { get; set; }
public Uri Url { get; set; } = null!;
}
}

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Fork
{
public int UpstreamFilterListId { get; private set; }
public int UpstreamFilterListId { get; set; }
public FilterList UpstreamFilterList { get; private set; } = null!;
public int ForkFilterListId { get; private set; }
public int ForkFilterListId { get; set; }
public FilterList ForkFilterList { get; private set; } = null!;
}

View file

@ -7,8 +7,8 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Language
{
public string Iso6391 { get; private set; } = null!;
public string Name { get; private set; } = null!;
public string Iso6391 { get; set; } = null!;
public string Name { get; set; } = null!;
public IReadOnlyCollection<FilterListLanguage> FilterListLanguages { get; private set; } = new HashSet<FilterListLanguage>();
}

View file

@ -7,10 +7,10 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class License
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public string? GitHubKey { get; private set; }
public Uri? Url { get; private set; }
public int Id { get; set; }
public string Name { get; set; } = null!;
public string? GitHubKey { get; set; }
public Uri? Url { get; set; }
public IReadOnlyCollection<FilterList> FilterLists { get; private set; } = new HashSet<FilterList>();
}

View file

@ -7,11 +7,11 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Maintainer
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public Uri? Url { get; private set; }
public string? EmailAddress { get; private set; }
public string? TwitterHandle { get; private set; }
public int Id { get; set; }
public string Name { get; set; } = null!;
public Uri? Url { get; set; }
public string? EmailAddress { get; set; }
public string? TwitterHandle { get; set; }
public IReadOnlyCollection<FilterListMaintainer> FilterListMaintainers { get; private set; } = new HashSet<FilterListMaintainer>();
}

View file

@ -7,12 +7,12 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Software
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public string? Description { get; private set; }
public Uri? HomeUrl { get; private set; }
public Uri? DownloadUrl { get; private set; }
public bool SupportsAbpUrlScheme { get; private set; }
public int Id { get; set; }
public string Name { get; set; } = null!;
public string? Description { get; set; }
public Uri? HomeUrl { get; set; }
public Uri? DownloadUrl { get; set; }
public bool SupportsAbpUrlScheme { get; set; }
public IReadOnlyCollection<SoftwareSyntax> SoftwareSyntaxes { get; private set; } = new HashSet<SoftwareSyntax>();
}

View file

@ -6,9 +6,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class SoftwareSyntax
{
public int SoftwareId { get; private set; }
public int SoftwareId { get; set; }
public Software Software { get; private set; } = null!;
public int SyntaxId { get; private set; }
public int SyntaxId { get; set; }
public Syntax Syntax { get; private set; } = null!;
}

View file

@ -7,10 +7,10 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Syntax
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public string? Description { get; private set; }
public Uri? Url { get; private set; }
public int Id { get; set; }
public string Name { get; set; } = null!;
public string? Description { get; set; }
public Uri? Url { get; set; }
public IReadOnlyCollection<FilterListSyntax> FilterListSyntaxes { get; private set; } = new HashSet<FilterListSyntax>();
public IReadOnlyCollection<SoftwareSyntax> SoftwareSyntaxes { get; private set; } = new HashSet<SoftwareSyntax>();
}

View file

@ -7,9 +7,9 @@ namespace FilterLists.Directory.Infrastructure.Persistence.Queries.Entities
{
public class Tag
{
public int Id { get; private set; }
public string Name { get; private set; } = null!;
public string? Description { get; private set; }
public int Id { get; set; }
public string Name { get; set; } = null!;
public string? Description { get; set; }
public IReadOnlyCollection<FilterListTag> FilterListTags { get; private set; } = new HashSet<FilterListTag>();
}