c3stream/Types.cs

276 lines
10 KiB
C#

// <auto-generated />
//
// To parse this JSON data, add NuGet 'Newtonsoft.Json' then do:
//
// using c3stream;
//
// var conference = Conference.FromJson(jsonString);
using System;
using System.Collections.Generic;
using System.Globalization;
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
namespace c3stream {
public partial class Conference {
[JsonProperty("acronym", NullValueHandling = NullValueHandling.Ignore)]
public string Acronym { get; set; }
[JsonProperty("aspect_ratio", NullValueHandling = NullValueHandling.Ignore)]
public string AspectRatio { get; set; }
[JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? UpdatedAt { get; set; }
[JsonProperty("title", NullValueHandling = NullValueHandling.Ignore)]
public string Title { get; set; }
[JsonProperty("schedule_url", NullValueHandling = NullValueHandling.Ignore)]
public string ScheduleUrl { get; set; }
[JsonProperty("slug", NullValueHandling = NullValueHandling.Ignore)]
public string Slug { get; set; }
[JsonProperty("event_last_released_at", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? EventLastReleasedAt { get; set; }
[JsonProperty("webgen_location", NullValueHandling = NullValueHandling.Ignore)]
public string WebgenLocation { get; set; }
[JsonProperty("logo_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri LogoUrl { get; set; }
[JsonProperty("images_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ImagesUrl { get; set; }
[JsonProperty("recordings_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri RecordingsUrl { get; set; }
[JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)]
public Uri Url { get; set; }
[JsonProperty("events", NullValueHandling = NullValueHandling.Ignore)]
public List<Event> Events { get; set; }
}
public class Event {
[JsonProperty("guid", NullValueHandling = NullValueHandling.Ignore)]
public string Guid { get; set; }
[JsonProperty("title", NullValueHandling = NullValueHandling.Ignore)]
public string Title { get; set; }
[JsonProperty("subtitle")] public string Subtitle { get; set; }
[JsonProperty("slug", NullValueHandling = NullValueHandling.Ignore)]
public string Slug { get; set; }
[JsonProperty("link", NullValueHandling = NullValueHandling.Ignore)]
public Uri Link { get; set; }
[JsonProperty("description")] public string Description { get; set; }
[JsonProperty("original_language", NullValueHandling = NullValueHandling.Ignore)]
public string OriginalLanguage { get; set; }
[JsonProperty("persons", NullValueHandling = NullValueHandling.Ignore)]
public List<string> Persons { get; set; }
[JsonProperty("tags", NullValueHandling = NullValueHandling.Ignore)]
public List<string> Tags { get; set; }
[JsonProperty("view_count", NullValueHandling = NullValueHandling.Ignore)]
public long? ViewCount { get; set; }
[JsonProperty("promoted", NullValueHandling = NullValueHandling.Ignore)]
public bool? Promoted { get; set; }
[JsonProperty("date", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? Date { get; set; }
[JsonProperty("release_date", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? ReleaseDate { get; set; }
[JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? UpdatedAt { get; set; }
[JsonProperty("length", NullValueHandling = NullValueHandling.Ignore)]
public long? Length { get; set; }
[JsonProperty("duration", NullValueHandling = NullValueHandling.Ignore)]
public long? Duration { get; set; }
[JsonProperty("thumb_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ThumbUrl { get; set; }
[JsonProperty("poster_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri PosterUrl { get; set; }
[JsonProperty("timeline_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri TimelineUrl { get; set; }
[JsonProperty("thumbnails_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ThumbnailsUrl { get; set; }
[JsonProperty("frontend_link", NullValueHandling = NullValueHandling.Ignore)]
public Uri FrontendLink { get; set; }
[JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)]
public Uri Url { get; set; }
[JsonProperty("conference_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ConferenceUrl { get; set; }
[JsonProperty("related", NullValueHandling = NullValueHandling.Ignore)]
public List<object> Related { get; set; }
}
public partial class Conference {
public static Conference FromJson(string json) => JsonConvert.DeserializeObject<Conference>(json, Converter.Settings);
}
public static partial class Serialize {
public static string ToJson(this Conference self) => JsonConvert.SerializeObject(self, Converter.Settings);
}
internal static class Converter {
public static readonly JsonSerializerSettings Settings = new JsonSerializerSettings {
MetadataPropertyHandling = MetadataPropertyHandling.Ignore,
DateParseHandling = DateParseHandling.None,
Converters = {new IsoDateTimeConverter {DateTimeStyles = DateTimeStyles.AssumeUniversal}}
};
}
public partial class Talk {
[JsonProperty("guid", NullValueHandling = NullValueHandling.Ignore)]
public string Guid { get; set; }
[JsonProperty("title", NullValueHandling = NullValueHandling.Ignore)]
public string Title { get; set; }
[JsonProperty("subtitle", NullValueHandling = NullValueHandling.Ignore)]
public string Subtitle { get; set; }
[JsonProperty("slug", NullValueHandling = NullValueHandling.Ignore)]
public string Slug { get; set; }
[JsonProperty("link", NullValueHandling = NullValueHandling.Ignore)]
public Uri Link { get; set; }
[JsonProperty("description", NullValueHandling = NullValueHandling.Ignore)]
public string Description { get; set; }
[JsonProperty("original_language", NullValueHandling = NullValueHandling.Ignore)]
public string OriginalLanguage { get; set; }
[JsonProperty("persons", NullValueHandling = NullValueHandling.Ignore)]
public List<string> Persons { get; set; }
[JsonProperty("tags", NullValueHandling = NullValueHandling.Ignore)]
public List<string> Tags { get; set; }
[JsonProperty("view_count", NullValueHandling = NullValueHandling.Ignore)]
public long? ViewCount { get; set; }
[JsonProperty("promoted", NullValueHandling = NullValueHandling.Ignore)]
public bool? Promoted { get; set; }
[JsonProperty("date", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? Date { get; set; }
[JsonProperty("release_date", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? ReleaseDate { get; set; }
[JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? UpdatedAt { get; set; }
[JsonProperty("length", NullValueHandling = NullValueHandling.Ignore)]
public long? Length { get; set; }
[JsonProperty("duration", NullValueHandling = NullValueHandling.Ignore)]
public long? Duration { get; set; }
[JsonProperty("thumb_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ThumbUrl { get; set; }
[JsonProperty("poster_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri PosterUrl { get; set; }
[JsonProperty("timeline_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri TimelineUrl { get; set; }
[JsonProperty("thumbnails_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ThumbnailsUrl { get; set; }
[JsonProperty("frontend_link", NullValueHandling = NullValueHandling.Ignore)]
public Uri FrontendLink { get; set; }
[JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)]
public Uri Url { get; set; }
[JsonProperty("conference_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ConferenceUrl { get; set; }
[JsonProperty("related", NullValueHandling = NullValueHandling.Ignore)]
public List<object> Related { get; set; }
[JsonProperty("recordings", NullValueHandling = NullValueHandling.Ignore)]
public List<Recording> Recordings { get; set; }
}
public class Recording {
[JsonProperty("size", NullValueHandling = NullValueHandling.Ignore)]
public long? Size { get; set; }
[JsonProperty("length", NullValueHandling = NullValueHandling.Ignore)]
public long? Length { get; set; }
[JsonProperty("mime_type", NullValueHandling = NullValueHandling.Ignore)]
public string MimeType { get; set; }
[JsonProperty("language", NullValueHandling = NullValueHandling.Ignore)]
public string Language { get; set; }
[JsonProperty("filename", NullValueHandling = NullValueHandling.Ignore)]
public string Filename { get; set; }
[JsonProperty("state", NullValueHandling = NullValueHandling.Ignore)]
public string State { get; set; }
[JsonProperty("folder", NullValueHandling = NullValueHandling.Ignore)]
public string Folder { get; set; }
[JsonProperty("high_quality", NullValueHandling = NullValueHandling.Ignore)]
public bool? HighQuality { get; set; }
[JsonProperty("width", NullValueHandling = NullValueHandling.Ignore)]
public long? Width { get; set; }
[JsonProperty("height", NullValueHandling = NullValueHandling.Ignore)]
public long? Height { get; set; }
[JsonProperty("updated_at", NullValueHandling = NullValueHandling.Ignore)]
public DateTimeOffset? UpdatedAt { get; set; }
[JsonProperty("recording_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri RecordingUrl { get; set; }
[JsonProperty("url", NullValueHandling = NullValueHandling.Ignore)]
public Uri Url { get; set; }
[JsonProperty("event_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri EventUrl { get; set; }
[JsonProperty("conference_url", NullValueHandling = NullValueHandling.Ignore)]
public Uri ConferenceUrl { get; set; }
}
public partial class Talk {
public static Talk FromJson(string json) => JsonConvert.DeserializeObject<Talk>(json, Converter.Settings);
}
public static partial class Serialize {
public static string ToJson(this Talk self) => JsonConvert.SerializeObject(self, Converter.Settings);
}
}