import
android.os.Bundle;
import
android.text.TextUtils;
import
android.view.View;
import
android.widget.Button;
import
android.widget.EditText;
import
android.widget.TextView;
import
android.widget.Toast;
import
androidx.appcompat.app.AppCompatActivity;
import
androidx.cardview.widget.CardView;
import
com.android.volley.Request;
import
com.android.volley.RequestQueue;
import
com.android.volley.VolleyError;
import
com.android.volley.toolbox.StringRequest;
import
com.android.volley.toolbox.Volley;
import
org.json.JSONException;
import
org.json.JSONObject;
import
java.util.HashMap;
import
java.util.Map;
public
class
MainActivity
extends
AppCompatActivity {
private
EditText courseIDEdt;
private
Button getCourseDetailsBtn;
private
CardView courseCV;
private
TextView courseNameTV, courseDescTV, courseDurationTV;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
courseNameTV = findViewById(R.id.idTVCourseName);
courseDescTV = findViewById(R.id.idTVCourseDescription);
courseDurationTV = findViewById(R.id.idTVCourseDuration);
getCourseDetailsBtn = findViewById(R.id.idBtnGetCourse);
courseIDEdt = findViewById(R.id.idEdtCourseId);
courseCV = findViewById(R.id.idCVCOurseItem);
getCourseDetailsBtn.setOnClickListener(
new
View.OnClickListener() {
@Override
public
void
onClick(View v) {
if
(TextUtils.isEmpty(courseIDEdt.getText().toString())) {
Toast.makeText(MainActivity.
this
,
"Please enter course id"
, Toast.LENGTH_SHORT).show();
return
;
}
getCourseDetails(courseIDEdt.getText().toString());
}
});
}
private
void
getCourseDetails(String courseId) {
RequestQueue queue = Volley.newRequestQueue(MainActivity.
this
);
StringRequest request =
new
StringRequest(Request.Method.POST, url,
new
com.android.volley.Response.Listener<String>() {
@Override
public
void
onResponse(String response) {
try
{
JSONObject jsonObject =
new
JSONObject(response);
if
(jsonObject.getString(
"courseName"
) ==
null
) {
Toast.makeText(MainActivity.
this
,
"Please enter valid id."
, Toast.LENGTH_SHORT).show();
}
else
{
courseNameTV.setText(jsonObject.getString(
"courseName"
));
courseDescTV.setText(jsonObject.getString(
"courseDescription"
));
courseDurationTV.setText(jsonObject.getString(
"courseDuration"
));
courseCV.setVisibility(View.VISIBLE);
}
}
catch
(JSONException e) {
e.printStackTrace();
}
}
},
new
com.android.volley.Response.ErrorListener() {
@Override
public
void
onErrorResponse(VolleyError error) {
Toast.makeText(MainActivity.
this
,
"Fail to get course"
+ error, Toast.LENGTH_SHORT).show();
}
}) {
@Override
public
String getBodyContentType() {
return
"application/x-www-form-urlencoded; charset=UTF-8"
;
}
@Override
protected
Map<String, String> getParams() {
Map<String, String> params =
new
HashMap<String, String>();
params.put(
"id"
, courseId);
return
params;
}
};
queue.add(request);
}
}