package com.example.jim_m.myapplication; import android.os.Bundle; import android.support.design.widget.FloatingActionButton; import android.support.design.widget.Snackbar; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.view.View; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Toast; import android.os.AsyncTask; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import android.util.Log; import java.io.UnsupportedEncodingException; import java.util.ArrayList; import java.util.HashMap; import android.app.ProgressDialog; import android.os.AsyncTask; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.widget.ListAdapter; import android.widget.ListView; import android.widget.SimpleAdapter; import android.widget.Toast; import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; import java.util.ArrayList; import java.util.HashMap; import com.loopj.android.http.AsyncHttpClient; import com.loopj.android.http.AsyncHttpResponseHandler; import com.loopj.android.http.RequestParams; import cz.msebera.android.httpclient.Header; public class UpdateActivity extends AppCompatActivity { private String TAG = MainActivity.class.getSimpleName(); private ListView lv; ArrayList<HashMap<String, String>> employeeList; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_update); employeeList = new ArrayList<>(); lv = (ListView)findViewById(R.id.list); GetEmployees(); } public void GetEmployees() { AsyncHttpClient client = new AsyncHttpClient(); client.get("http://employeesservice.azurewebsites.net/api/employees", new AsyncHttpResponseHandler() { @Override public void onStart() { // called before request is started } @Override public void onSuccess(int statusCode, Header[] headers, byte[] response) { try { String str = new String(response, "UTF-8"); JSONArray emmployees= new JSONArray(str); for (int i = 0; i < emmployees.length(); i++) { JSONObject c = emmployees.getJSONObject(i); String f_n = c.getString("First_Name"); String l_n = c.getString("Last_Name"); String birthdate = c.getString("birthdate"); String address = c.getString("Address"); if(address=="null") address=""; HashMap<String, String> employee = new HashMap<>(); employee.put("first_name", "First Name : " +f_n); employee.put("last_name","Last Name : " + l_n); employee.put("birthdate", "Birthdate : " + birthdate); employee.put("address", "Address : " + address); employeeList.add(employee); } ListAdapter adapter = new SimpleAdapter( UpdateActivity.this, employeeList, R.layout.content_update, new String[]{"first_name", "last_name", "address","birthdate"}, new int[]{R.id.first_name, R.id.last_name,R.id.address, R.id.birthdate}); lv.setAdapter(adapter); } catch (JSONException e) { // TODO Auto-generated catch block Toast.makeText(getApplicationContext(), "Error Occured [Server's JSON response might be invalid]!", Toast.LENGTH_LONG).show(); e.printStackTrace(); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } } @Override public void onFailure(int statusCode, Header[] headers, byte[] errorResponse, Throwable e) { // called when response HTTP status is "4XX" (eg. 401, 403, 404) } @Override public void onRetry(int retryNo) { // called when request is retried } }); } }