generated from mikaeldui/nupkg-template
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
10 changed files
with
219 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace UnitedKingdom.Parliament | ||
{ | ||
public class CommonsDivision : LinkedData | ||
{ | ||
public DateTimeValue Date { get; set; } | ||
public string Title { get; set; } | ||
public string Uin { get; set; } | ||
|
||
// Extended | ||
|
||
public StringValue[]? AbstainCount { get; set; } | ||
public StringValue[]? AyesCount { get; set; } | ||
public bool? DeferredVote { get; set; } | ||
public StringValue[]? DidNotVoteCount { get; set; } | ||
public StringValue[]? ErrorVoteCount { get; set; } | ||
public StringValue[]? Margin { get; set; } | ||
public StringValue[]? NoesVoteCount { get; set; } | ||
public StringValue[]? NoneligibleCount { get; set; } | ||
public StringValue[]? SuspendedOrExpelledVotesCount { get; set; } | ||
public string? DivisionNumber { get; set; } | ||
public Uri[]? Legislature { get; set; } | ||
public string[]? Session { get; set; } | ||
[JsonPropertyName("vote")] | ||
public CommonsDivisionVote[]? Votes { get; set; } | ||
} | ||
} |
10 changes: 10 additions & 0 deletions
10
UnitedKingdom.Parliament.Client/Models/CommonsDivisionVote.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
namespace UnitedKingdom.Parliament | ||
{ | ||
public class CommonsDivisionVote : LinkedData | ||
{ | ||
public Member[]? Member { get; set; } | ||
public string MemberParty { get; set; } | ||
public StringValue MemberGender { get; set; } | ||
public StringValue MemberPrinted { get; set; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
namespace UnitedKingdom.Parliament | ||
{ | ||
public class Member : LinkedData | ||
{ | ||
public StringValue Label { get; set; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
using System.ComponentModel; | ||
using System.Text.Json.Serialization; | ||
|
||
namespace UnitedKingdom.Parliament | ||
{ | ||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)] | ||
public interface IValue | ||
{ | ||
[JsonPropertyName("_value")] | ||
object Value { get; set; } | ||
} | ||
|
||
[Browsable(false), EditorBrowsable(EditorBrowsableState.Never)] | ||
public class StringValue : IValue | ||
{ | ||
[JsonPropertyName("_value")] | ||
public string Value { get; set; } | ||
object IValue.Value { get => Value; set => Value = (string)value; } | ||
} | ||
|
||
public class DateTimeValue : IValue | ||
{ | ||
[JsonPropertyName("_value")] | ||
public DateTime Value { get; set; } | ||
[JsonPropertyName("_datatype")] | ||
public string DataType { get; set; } | ||
object IValue.Value { get => Value; set => Value = (DateTime)value; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace UnitedKingdom.Parliament | ||
{ | ||
public abstract class LinkedData | ||
{ | ||
[JsonPropertyName("_about")] | ||
public Uri About { get; set; } | ||
/// <summary> | ||
/// Can be one or multiple URLs. | ||
/// </summary> | ||
public object? Type { get; set; } | ||
public Uri? IsPrimaryTopicOf { get; set; } | ||
|
||
/// <summary> | ||
/// Get the numeric resource ID. | ||
/// </summary> | ||
public int GetId() => int.Parse(About.AbsolutePath.AfterLast('/')); | ||
} | ||
} |
23 changes: 13 additions & 10 deletions
23
....Parliament.Client/Rest/ParliamentPage.cs → ...arliament.Client/Schema/ParliamentPage.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,29 +1,32 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace UnitedKingdom.Parliament.Rest | ||
namespace UnitedKingdom.Parliament | ||
{ | ||
public class ParliamentPage<TType> | ||
public abstract class ParliamentPageBase : LinkedData | ||
{ | ||
[JsonPropertyName("_about")] | ||
public Uri About { get; set; } | ||
public Uri Definition { get; set; } | ||
public Uri ExtendedMetadataVersion { get; set; } | ||
} | ||
|
||
public class ParliamentListPage<TType> : ParliamentPageBase | ||
{ | ||
public TType[]? Items { get; set; } | ||
public Uri First { get; set; } | ||
public Uri HasPart { get; set; } | ||
/// <summary> | ||
/// Can be one of multiple URLs. | ||
/// </summary> | ||
public object IsPartOf { get; set; } | ||
public TType? PrimaryTopic { get; set; } | ||
public TType[]? Items { get; set; } | ||
public int ItemsPerPage { get; set; } | ||
public Uri Next { get; set; } | ||
public int Page { get; set; } | ||
public int StartIndex { get; set; } | ||
public int TotalResults { get; set; } | ||
/// <summary> | ||
/// Can be one or multiple URLs. | ||
/// </summary> | ||
public object Type { get; set; } | ||
} | ||
|
||
|
||
public class ParliamentItemPage<TType> : ParliamentPageBase | ||
{ | ||
public TType? PrimaryTopic { get; set; } | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters