Ejemplo n.º 1
0
        public async Task <ProgressionsResponse> GetProgressionsResponseAsync(ProgressionsRequest progressionsRequest)
        {
            var spaceId = progressionsRequest.Platform.ToSpaceIdValue();
            var url     = progressionsRequest.Platform.ToUrlValue();
            var route   = string.Format(ApiRoutes.Progressions, spaceId, url);

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

            request.AddHeaders(GetCommonHeaders(progressionsRequest.Ticket, progressionsRequest.UbiAppId, progressionsRequest.SessionId));
            request.AddParameter("profile_ids", string.Join(",", progressionsRequest.ProfileIds));

            return(await ExecuteRequestAsync <ProgressionsResponse>(request));
        }
Ejemplo n.º 2
0
        public async Task <IEnumerable <Progression> > GetProgressionsAsync(IEnumerable <string> profileIds, EPlatform platform)
        {
            if (profileIds == null)
            {
                throw new ArgumentNullException(nameof(profileIds));
            }
            if (!Enum.IsDefined(typeof(EPlatform), platform))
            {
                throw new InvalidEnumArgumentException(nameof(platform), (int)platform, typeof(EPlatform));
            }

            var progressionRequest = new ProgressionsRequest
            {
                UbiAppId   = _settings.UbiAppId,
                Ticket     = _ticket,
                SessionId  = _sessionId,
                ProfileIds = profileIds,
                Platform   = platform
            };

            var progressionsReposne = await _apiManager.GetProgressionsResponseAsync(progressionRequest);

            return(progressionsReposne.PlayerProfiles.Select(ApiMapper.GetMappedProgresstion));
        }