Exemplo n.º 1
0
        public IEnumerable<Series> GetMultipleSeries(
           string name = null, string abbreviation = null,
           string moderatorId = null, int? elementsPerPage = null,
           SeriesEmbeds embeds = default(SeriesEmbeds),
           SeriesOrdering orderBy = default(SeriesOrdering))
        {
            var parameters = new List<string>() { embeds.ToString() };

            parameters.AddRange(orderBy.ToParameters());

            if (!string.IsNullOrEmpty(name))
                parameters.Add(string.Format("name={0}", Uri.EscapeDataString(name)));

            if (!string.IsNullOrEmpty(abbreviation))
                parameters.Add(string.Format("abbreviation={0}", Uri.EscapeDataString(abbreviation)));

            if (!string.IsNullOrEmpty(moderatorId))
                parameters.Add(string.Format("moderator={0}", Uri.EscapeDataString(moderatorId)));

            if (elementsPerPage.HasValue)
                parameters.Add(string.Format("max={0}", elementsPerPage.Value));

            var uri = GetSeriesUri(parameters.ToParameters());
            return baseClient.DoPaginatedRequest(uri,
                x => Series.Parse(baseClient, x) as Series);
        }
Exemplo n.º 2
0
        public IEnumerable <Series> GetMultipleSeries(
            string name            = null, string abbreviation = null,
            string moderatorId     = null, int?elementsPerPage = null,
            SeriesEmbeds embeds    = default(SeriesEmbeds),
            SeriesOrdering orderBy = default(SeriesOrdering))
        {
            var parameters = new List <string>()
            {
                embeds.ToString()
            };

            parameters.AddRange(orderBy.ToParameters());

            if (!string.IsNullOrEmpty(name))
            {
                parameters.Add(string.Format("name={0}", Uri.EscapeDataString(name)));
            }

            if (!string.IsNullOrEmpty(abbreviation))
            {
                parameters.Add(string.Format("abbreviation={0}", Uri.EscapeDataString(abbreviation)));
            }

            if (!string.IsNullOrEmpty(moderatorId))
            {
                parameters.Add(string.Format("moderator={0}", Uri.EscapeDataString(moderatorId)));
            }

            if (elementsPerPage.HasValue)
            {
                parameters.Add(string.Format("max={0}", elementsPerPage.Value));
            }

            var uri = GetSeriesUri(parameters.ToParameters());

            return(baseClient.DoPaginatedRequest(uri,
                                                 x => Series.Parse(baseClient, x) as Series));
        }
Exemplo n.º 3
0
        internal static IEnumerable <string> ToParameters(this SeriesOrdering ordering)
        {
            var isDescending = ((int)ordering & 1) == 1;

            if (isDescending)
            {
                ordering = (SeriesOrdering)((int)ordering - 1);
            }

            var str = "";

            switch (ordering)
            {
            case SeriesOrdering.JapaneseName:
                str = "name.jap"; break;

            case SeriesOrdering.Abbreviation:
                str = "abbreviation"; break;

            case SeriesOrdering.CreationDate:
                str = "created"; break;
            }

            var list = new List <string>();

            if (!string.IsNullOrEmpty(str))
            {
                list.Add(string.Format("orderby={0}", str));
            }
            if (isDescending)
            {
                list.Add("direction=desc");
            }

            return(list);
        }