Esempio n. 1
0
        public ReadOnlyCollection <Variable> GetVariables(string gameId, VariablesOrdering orderBy = default)
        {
            var parameters = new List <string>(orderBy.ToParameters());

            var uri = GetGamesUri(string.Format("/{0}/variables{1}",
                                                Uri.EscapeDataString(gameId),
                                                parameters.ToParameters()));

            return(baseClient.DoDataCollectionRequest(uri,
                                                      x => Variable.Parse(baseClient, x) as Variable));
        }
        public ReadOnlyCollection<Variable> GetVariables(string categoryId,
            VariablesOrdering orderBy = default(VariablesOrdering))
        {
            var parameters = new List<string>(orderBy.ToParameters());

            var uri = GetCategoriesUri(string.Format("/{0}/variables{1}",
                Uri.EscapeDataString(categoryId),
                parameters.ToParameters()));

            return baseClient.DoDataCollectionRequest<Variable>(uri,
                x => Variable.Parse(baseClient, x));
        }
Esempio n. 3
0
        internal static IEnumerable <string> ToParameters(this VariablesOrdering ordering)
        {
            var isDescending = ((int)ordering & 1) == 1;

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

            var str = "";

            switch (ordering)
            {
            case VariablesOrdering.Name:
                str = "name"; break;

            case VariablesOrdering.Mandatory:
                str = "mandatory"; break;

            case VariablesOrdering.UserDefined:
                str = "user-defined"; 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);
        }