public MastodonClient(string domain) : base($"https://{domain}", AuthMode.OAuth2, RequestMode.FormUrlEncoded) { Domain = domain; BinaryParameters = new List <string> { "avatar", "header", "file" }; Account = new AccountsClient(this); Apps = new AppsClient(this); Auth = new AuthClient(this); Blocks = new BlocksClient(this); CustomEmojis = new CustomEmojisClient(this); DomainBlocks = new DomainBlocksClient(this); Endorsements = new EndorsementsClient(this); Favorites = new FavoritesClient(this); Filters = new FiltersClient(this); FollowRequests = new FollowRequestsClient(this); Follows = new FollowsClient(this); Instance = new InstanceClient(this); Lists = new ListsClient(this); Media = new MediaClient(this); Notifications = new NotificationsClient(this); Push = new PushClient(this); Reports = new ReportsClient(this); SearchV1 = new SearchV1Client(this); SearchV2 = new SearchV2Client(this); Statuses = new StatusesClient(this); Streaming = new StreamingClient(this); Suggestions = new SuggestionsClient(this); Timelines = new TimelinesClient(this); }
public MastodonClient(Credential credential, HttpClientHandler innerHandler = null) : base(credential, new OAuth2HttpClientHandler(innerHandler), RequestMode.FormUrlEncoded) { BinaryParameters = new List <string> { "avatar", "header", "file" }; Account = new AccountsClient(this); Apps = new AppsClient(this); Auth = new AuthClient(this); Blocks = new BlocksClient(this); Conversations = new ConversationsClient(this); CustomEmojis = new CustomEmojisClient(this); DomainBlocks = new DomainBlocksClient(this); Endorsements = new EndorsementsClient(this); Favorites = new FavoritesClient(this); Filters = new FiltersClient(this); FollowRequests = new FollowRequestsClient(this); Follows = new FollowsClient(this); Instance = new InstanceClient(this); Lists = new ListsClient(this); Media = new MediaClient(this); Notifications = new NotificationsClient(this); Push = new PushClient(this); Reports = new ReportsClient(this); ScheduledStatuses = new ScheduledStatusesClient(this); SearchV1 = new SearchV1Client(this); SearchV2 = new SearchV2Client(this); Statuses = new StatusesClient(this); Streaming = new StreamingClient(this); Suggestions = new SuggestionsClient(this); Timelines = new TimelinesClient(this); }
/// <summary> /// Retrieves a filing date announcement by statement number and election cycle. /// </summary> /// <param name="statementNumber">The filing statement number to search for.</param> /// <param name="electionCycle">The election cycle in which to search.</param> /// <returns>The announcement matching the filing statement number and election cycle specified if found; otherwise, null.</returns> public static Announcement GetFilingDateAnnouncement(byte statementNumber, string electionCycle) { Settings settings = Properties.Settings.Default; foreach (var announcement in ParseAnnouncements(electionCycle, ListsClient.GetListItems(settings.AnnouncementsListName, string.Format(settings.FilingDateAnnouncementListQueryFilter, statementNumber, electionCycle), ItemViewFields, QueryOptions))) { return(announcement); } return(null); }
/// <summary> /// Retrieves an announcement by unique ID. /// </summary> /// <param name="id">The ID of the announcement to retrieve.</param> /// <returns>The announcement matching the ID specified if found; otherwise, null.</returns> public static Announcement GetAnnouncement(string id) { Settings settings = Properties.Settings.Default; foreach (var announcement in ParseAnnouncements(string.Empty, ListsClient.GetListItems(settings.AnnouncementsListName, string.Format(settings.AnnouncementItemQueryFilter, id), ItemViewFields, QueryOptions))) { return(announcement); } return(null); }
/// <summary> /// Retrieves a collection of unexpired announcements filtered by election cycle. /// </summary> /// <param name="electionCycle">The election cycle to filter results by, or an empty string to retrieve announcements across all elections.</param> /// <returns>A collection of unexpired announcements filtered by the election cycle specified.</returns> /// <exception cref="ArgumentNullException"><paramref name="electionCycle"/> is null.</exception> public static IEnumerable <Announcement> GetAnnouncements(string electionCycle) { if (electionCycle == null) { throw new ArgumentNullException("electionCycle", "Target election cycle must not be null."); } Settings settings = Properties.Settings.Default; var xmlData = ListsClient.GetListItems(settings.AnnouncementsListName, string.Format(settings.AnnouncementListQueryFilter, electionCycle), ListViewFields, QueryOptions); return(ParseAnnouncements(electionCycle, xmlData)); }
protected internal UsersClient(MisskeyClient client) : base(client, "users") { Lists = new ListsClient(client); }