Exemple #1
0
        /// <summary>
        /// Fetches lists of comic stories with optional filters.
        /// </summary>
        /// <param name="filter">
        /// Search query filter data
        /// </param>
        public virtual StoryResult GetStories(StoryRequestFilter filter = default(StoryRequestFilter))
        {
            var request = new RestRequest(StoriesUrlSegment, Method.GET);

            // Parse filter
            //
            ParseStoryFilter(request, filter);

            return(Execute <StoryResult>(request));
        }
Exemple #2
0
        public virtual StoryResult FindCharacterStories(string characterId, StoryRequestFilter filter = default(StoryRequestFilter))
        {
            // Build request url
            //
            string requestUrl =
                string.Format("{0}/{1}/stories", CharactersUrlSegment, characterId);

            var request = new RestRequest(requestUrl, Method.GET);

            // Parse filter
            //
            ParseStoryFilter(request, filter);
            return(Execute <StoryResult>(request));
        }
Exemple #3
0
 private void ParseStoryFilter(IRestRequest request, StoryRequestFilter filter)
 {
     if (filter != null)
     {
         if (filter.ModifiedSince.HasValue)
         {
             request.AddParameter("modifiedSince", filter.ModifiedSince.Value.ToString("yyyy-MM-dd"));
         }
         if (filter.Comics.HasValue())
         {
             request.AddParameter("comics", filter.Comics);
         }
         if (filter.Series.HasValue())
         {
             request.AddParameter("series", filter.Series);
         }
         if (filter.Events.HasValue())
         {
             request.AddParameter("events", filter.Events);
         }
         if (filter.Creators.HasValue())
         {
             request.AddParameter("creators", filter.Creators);
         }
         if (filter.Characters.HasValue())
         {
             request.AddParameter("characters", filter.Characters);
         }
         if (filter.ResultSetOrder.HasValue())
         {
             request.AddParameter("orderBy", filter.ResultSetOrder);
         }
         if (filter.Limit.HasValue)
         {
             request.AddParameter("limit", filter.Limit.Value);
         }
         if (filter.Offset.HasValue)
         {
             request.AddParameter("offset", filter.Offset.Value);
         }
     }
 }