package tech.salroid.filmy.activities;
import android.content.Context;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;
import org.json.JSONException;
import org.json.JSONObject;
import tech.salroid.filmy.network_stuff.VolleySingleton;
/*
* Filmy Application for Android
* Copyright (c) 2016 Sajal Gupta (http://github.com/salroid).
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
public class Rating {
public static String imdb_rating = "0",tomatometer_rating="0",audience_rating="0",metascore_rating="0",image=null;
public static void getRating(final Context context, String movie_id_final) {
VolleySingleton volleySingleton = VolleySingleton.getInstance();
RequestQueue requestQueue = volleySingleton.getRequestQueue();
String BASE_RATING_URL = "http://www.omdbapi.com/?i=" + movie_id_final + "&tomatoes=true&r=json";
JsonObjectRequest jsonObjectRequestForMovieDetails = new JsonObjectRequest(BASE_RATING_URL, null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
imdb_rating = response.getString("imdbRating");
tomatometer_rating=response.getString("tomatoRating");
audience_rating=response.getString("tomatoUserRating");
metascore_rating=response.getString("Metascore");
image=response.getString("tomatoImage");
setRatingCallback(context,imdb_rating,tomatometer_rating,audience_rating,metascore_rating,image);
} catch (JSONException e) {
e.printStackTrace();
setRatingCallback(context,imdb_rating,tomatometer_rating,audience_rating,metascore_rating,image);
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
// Log.e("webi", "Volley Error: " + error.getCause());
}
}
);
requestQueue.add(jsonObjectRequestForMovieDetails);
}
private static void setRatingCallback(Context context,String imdb_rating,String tomatometer_rating,String audience_rating,String metascore_rating,String image) {
((MovieDetailsActivity)context).setRating(imdb_rating,tomatometer_rating,audience_rating,metascore_rating,image);
}
}