Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.example.submission3aplikasimoviecatalogueapiardi.Film;
- import android.util.Log;
- import androidx.lifecycle.LiveData;
- import androidx.lifecycle.MutableLiveData;
- import androidx.lifecycle.ViewModel;
- import com.loopj.android.http.AsyncHttpClient;
- import com.loopj.android.http.AsyncHttpResponseHandler;
- import org.json.JSONArray;
- import org.json.JSONException;
- import org.json.JSONObject;
- import java.util.ArrayList;
- import java.util.Objects;
- import cz.msebera.android.httpclient.Header;
- public class FilmDataAPI extends ViewModel {
- private static final String API_KEY = "6d0a6d49a08b459f83f38b41ee4a3ad2";
- private MutableLiveData<ArrayList<Film>> listFilm = new MutableLiveData<>();
- public void setFilmData(String extra_film) {
- AsyncHttpClient client = new AsyncHttpClient();
- final ArrayList<Film> listApi = new ArrayList<>();
- String url = "https://api.themoviedb.org/3/discover/movie?api_key=" + API_KEY + "&language=en-US";
- client.get( url, new AsyncHttpResponseHandler() {
- @Override
- public void onSuccess(int statusCode, Header[] headers, byte[] responseBody) {
- try {
- String result = new String( responseBody );
- JSONObject responseObject = new JSONObject( result );
- JSONArray list = responseObject.getJSONArray( "results" );
- for (int i = 0; i < list.length(); i++) {
- JSONObject film = list.getJSONObject( i );
- Film filmdata = new Film( film );
- listApi.add( filmdata );
- }
- listFilm.postValue( listApi );
- } catch (JSONException e) {
- e.printStackTrace();
- Log.d( "Exception", Objects.requireNonNull( e.getMessage() ) );
- }
- }
- @Override
- public void onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error) {
- Log.d( "onFailure", Objects.requireNonNull( error.getMessage() ) );
- }
- } );
- }
- LiveData<ArrayList<Film>> getFilmData() {
- return listFilm;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement