コード例 #1
0
        public async Task <LinkedList <ReturnMovie> > GetMovies(List <string> titles)
        {
            //LinkedList<JObject> backendResponses = new LinkedList<JObject>();
            LinkedList <ReturnMovie> movieList = new LinkedList <ReturnMovie>();

            //todo: make this fancy async
            foreach (var movie in titles)
            {
                try
                {
                    JObject singleResponse = await _OMDBConnector.GetMovie(movie);

                    if (singleResponse != null)
                    {
                        OMDBMovie   mappedMovie = _movieMapper.JsonToMovie(singleResponse);
                        ReturnMovie returnMovie = _movieConverter.OMDBToReturnMovie(mappedMovie);
                        movieList.AddLast(returnMovie);
                    }
                    else
                    {
                        Console.WriteLine($"Error when trying to retrieve {movie}, skipping adding it to the list");
                    }
                }
                catch (System.Exception e)
                {
                    Console.WriteLine(e);
                }
            }
            //foreach (JObject jobject in backendResponses)
            //{
            //    movieList.AddLast(_movieMapper.JsonToMovie(jobject));
            //}

            return(movieList);
        }
コード例 #2
0
        public async Task <ReturnMovie> GetMovie(string title)
        {
            //Get movie from OMDB
            JObject backendResponse = await _OMDBConnector.GetMovie(title);

            //Do some verification (TODO)
            //Map the JSON to a Movie object
            if (backendResponse != null)
            {
                OMDBMovie   mappedMovie = _movieMapper.JsonToMovie(backendResponse);
                ReturnMovie returnMovie = _movieConverter.OMDBToReturnMovie(mappedMovie);
                return(returnMovie);
            }
            else
            {
                //todo make exceptions return proper json errors
                return(null);
                //throw new Exception($"Could not retrieve movie {title}");
            }
        }