/// <summary>
        ///  作成されたのリソースを取得<br />
        /// </summary>
        ///
        /// <returns>IEnumerator</returns>
        /// <param name="callback">コールバックハンドラ</param>
        /// <param name="request">リクエストパラメータ</param>
        public IEnumerator GetResource(
            Request.GetResourceRequest request,
            UnityAction <AsyncResult <Result.GetResourceResult> > callback
            )
        {
            var task = new GetResourceTask(request, callback);

            return(Gs2WebSocketSession.Execute(task));
        }
Example #2
0
        /// <summary>
        ///  作成されたのリソースを取得<br />
        /// </summary>
        ///
        /// <returns>IEnumerator</returns>
        /// <param name="callback">コールバックハンドラ</param>
        /// <param name="request">リクエストパラメータ</param>
        public IEnumerator GetResource(
            Request.GetResourceRequest request,
            UnityAction <AsyncResult <Result.GetResourceResult> > callback
            )
        {
            var task = new GetResourceTask(request, callback);

            if (_certificateHandler != null)
            {
                task.UnityWebRequest.certificateHandler = _certificateHandler;
            }
            return(Gs2RestSession.Execute(task));
        }
        private async Task <Stream> DownloadPlainMediaResourceAsync(IMediaResourceDownloadRequest request, CancellationToken cancelToken = default(CancellationToken))
        {
            MediaItemUrlBuilder urlBuilder = new MediaItemUrlBuilder(
                this.restGrammar,
                this.webApiGrammar,
                this.sessionConfig,
                this.mediaSettings,
                request.ItemSource);

            var taskFlow = new GetResourceTask(urlBuilder, this.httpClient);

            return(await RestApiCallFlow.LoadResourceFromNetworkFlow(request, taskFlow, cancelToken));
        }
        public async Task <Stream> DownloadMediaResourceAsync(IMediaResourceDownloadRequest request, CancellationToken cancelToken = default(CancellationToken))
        {
            IMediaResourceDownloadRequest requestCopy = request.DeepCopyReadMediaRequest();

            await this.GetPublicKeyAsync(cancelToken);

            IMediaResourceDownloadRequest autocompletedRequest = this.requestMerger.FillReadMediaItemGaps(requestCopy);

            MediaItemUrlBuilder urlBuilder = new MediaItemUrlBuilder(
                this.restGrammar,
                this.sscGrammar,
                this.sessionConfig,
                this.mediaSettings,
                autocompletedRequest.ItemSource);

            var taskFlow = new GetResourceTask(urlBuilder, this.httpClient);

            return(await RestApiCallFlow.LoadResourceFromNetworkFlow(autocompletedRequest, taskFlow, cancelToken));
        }
    private async Task<Stream> DownloadPlainMediaResourceAsync(IMediaResourceDownloadRequest request, CancellationToken cancelToken = default(CancellationToken))
    {
      MediaItemUrlBuilder urlBuilder = new MediaItemUrlBuilder(
        this.restGrammar,
        this.webApiGrammar,
        this.sessionConfig,
        this.mediaSettings,
        request.ItemSource);

      var taskFlow = new GetResourceTask(urlBuilder, this.httpClient);
      return await RestApiCallFlow.LoadResourceFromNetworkFlow(request, taskFlow, cancelToken);
    }