Advertisement
gonzalob

Untitled

Apr 7th, 2022
850
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 6.79 KB | None | 0 0
  1. package com.emer.beneficiary.endpoints.generalData.repository;
  2.  
  3.  
  4. import android.content.*;
  5.  
  6. import com.android.volley.*;
  7. import com.android.volley.toolbox.*;
  8. import com.emer.beneficiary.app.*;
  9. import com.emer.beneficiary.endpoints.generalData.callbacks.*;
  10. import com.emer.beneficiary.endpoints.generalData.model.*;
  11.  
  12. import org.json.*;
  13.  
  14. import java.util.*;
  15.  
  16. public class GeneralDataRepositoryImpl implements GeneralDataRepository{
  17.  
  18.     private final Context activity;
  19.     private final ProviderPreferences preferences;
  20.  
  21.  
  22.     public GeneralDataRepositoryImpl(Context activity, ProviderPreferences preferences){
  23.         this.activity=activity;
  24.         this.preferences=preferences;
  25.     }
  26.  
  27.  
  28.     public void attemptGeneralData(GeneralDataCallback generalDataCallback) {
  29.         RequestQueue queue= Volley.newRequestQueue(activity);
  30.  
  31.         StringRequest stringRequest = new StringRequest(Request.Method.GET, Urls.GENERAL_DATA+"?id-language=1", new com.android.volley.Response.Listener<String>() {
  32.             @Override
  33.             public void onResponse(String rta)
  34.             {
  35.  
  36.                 try
  37.                 {
  38.                     JSONObject jo = new JSONObject(rta);
  39.  
  40.                     List<GeneralData> generalDataList = new ArrayList<>();
  41.  
  42.                     JSONArray jo_health_insurances_plan = jo.getJSONArray("health_insurances_plan");
  43.                     for(int i= 0; i<jo_health_insurances_plan.length();i++){
  44.                         GeneralData generalData = new GeneralData();
  45.                         generalData.setType("health_insurances_plan");
  46.                         generalData.setId_interno(jo_health_insurances_plan.getJSONObject(i).getInt("id_health_insurance"));
  47.                         JSONArray jsonArray = jo_health_insurances_plan.getJSONObject(i).getJSONArray("health_insurances_plan");
  48.                         ArrayList<GeneralData> generalDataArrayListPlanes = new ArrayList<>();
  49.                         for (int j= 0 ; j<jsonArray.length();j++)
  50.                         {
  51.                             JSONObject jsonObject = jsonArray.getJSONObject(j);
  52.                             GeneralData generalData1 = new GeneralData();
  53.                             generalData1.setId_interno(jsonObject.getInt("id"));
  54.                             generalData1.setValue(jsonObject.getString("plan_name"));
  55.                             generalDataArrayListPlanes.add(generalData1);
  56.                         }
  57.                         generalData.setGeneralDataArrayList(generalDataArrayListPlanes);
  58.                        
  59.                         generalDataList.add(generalData);
  60.                     }
  61.  
  62.  
  63.                     JSONArray jsonObject_health_insurance = jo.getJSONArray("health_insurance");
  64.                     for(int i= 0; i<jsonObject_health_insurance.length();i++){
  65.                         GeneralData generalData = new GeneralData();
  66.                         generalData.setType("health_insurance");
  67.                         generalData.setId_interno(jsonObject_health_insurance.getJSONObject(i).getInt("id"));
  68.                         generalData.setValue(jsonObject_health_insurance.getJSONObject(i).getString("display_name"));
  69.  
  70.                         generalDataList.add(generalData);
  71.                     }
  72.  
  73.                     //recorrer, levantar los objetos, crear un GeneralData y meterlo en la lista
  74.  
  75.                     JSONArray jsonObject_security_questions = jo.getJSONArray("security_questions");
  76.                     for (int e = 0; e<jsonObject_security_questions.length();e++){
  77.                         GeneralData generalData = new GeneralData();
  78.                         generalData.setType("security_questions");
  79.                         generalData.setId_interno(jsonObject_security_questions.getJSONObject(e).getInt("id"));
  80.                         generalData.setValue(jsonObject_security_questions.getJSONObject(e).getString("display_name"));
  81.  
  82.                         generalDataList.add(generalData);
  83.                     }
  84.  
  85.                     //recorrer, levantar los objetos, crear un GeneralData y meterlo en la lista
  86.  
  87.                     JSONArray jsonObject_identification_type_initials = jo.getJSONArray("identification_type_initials");
  88.                     for (int d = 0; d < jsonObject_identification_type_initials.length(); d++){
  89.                         GeneralData generalData = new GeneralData();
  90.                         generalData.setType("identification_type_initials");
  91.                         generalData.setId_interno(jsonObject_identification_type_initials.getJSONObject(d).getInt("id"));
  92.                         generalData.setValue(jsonObject_identification_type_initials.getJSONObject(d).getString("display_name"));
  93.  
  94.                         generalDataList.add(generalData);
  95.                     }
  96.  
  97.                     //recorrer, levantar los objetos, crear un GeneralData y meterlo en la lista
  98.  
  99.                     JSONArray jsonObject_biological_sex = jo.getJSONArray("biological_sex");
  100.                     for (int i = 0; i < jsonObject_biological_sex.length(); i++){
  101.                         GeneralData generalData = new GeneralData();
  102.                         generalData.setType("biological_sex");
  103.                         generalData.setId_interno(jsonObject_biological_sex.getJSONObject(i).getInt("id"));
  104.                         generalData.setValue(jsonObject_biological_sex.getJSONObject(i).getString("display_name"));
  105.  
  106.                         generalDataList.add(generalData);
  107.                     }
  108.  
  109.                     JSONArray jsonArray_reason_for_discharge = jo.getJSONArray("reason_for_discharge");
  110.                     for (int i = 0; i < jsonArray_reason_for_discharge.length(); i++){
  111.                         GeneralData generalData = new GeneralData();
  112.                         generalData.setType("reason_for_discharge");
  113.                         generalData.setId_interno(jsonArray_reason_for_discharge.getJSONObject(i).getInt("id"));
  114.                         generalData.setValue(jsonArray_reason_for_discharge.getJSONObject(i).getString("display_name"));
  115.  
  116.                         generalDataList.add(generalData);
  117.                     }
  118.  
  119.                     generalDataCallback.onGeneralDataSuccess(generalDataList);
  120.                 }
  121.                 catch (Exception e)
  122.                 {
  123.                     e.printStackTrace();
  124.                     generalDataCallback.onGeneralDataFailure("Error desconocido en la respuesta de los datos");
  125.                 }
  126.             }
  127.         }, new Response.ErrorListener() {
  128.             @Override
  129.             public void onErrorResponse(VolleyError error)
  130.             {
  131.                 error.printStackTrace();
  132.                 generalDataCallback.onGeneralDataFailure("Error desconocido en la respuesta de los datos");
  133.             }
  134.         });
  135.         queue.add(stringRequest);
  136.     }
  137. }
  138.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement