コード例 #1
0
        public IObservable <List <MissionItem> > DownloadMission()
        {
            return(Observable.Create <List <MissionItem> >(observer =>
            {
                var downloadMissionResponse = _missionServiceClient.DownloadMission(new DownloadMissionRequest());
                var missionResult = downloadMissionResponse.MissionResult;
                if (missionResult.Result == MissionResult.Types.Result.Success)
                {
                    observer.OnNext(downloadMissionResponse.MissionItems.ToList());
                }
                else
                {
                    observer.OnError(new MissionException(missionResult.Result, missionResult.ResultStr));
                }

                observer.OnCompleted();
                return Task.FromResult(Disposable.Empty);
            }));
        }