use of com.remswork.project.alice.model.Attendance in project classify-system by anverliedoit.
the class AttendanceResource method getAttendanceList.
@GET
public Response getAttendanceList() {
try {
List<Attendance> attendanceList;
AttendanceResourceLinks resourceLinks = new AttendanceResourceLinks(uriInfo);
ClassResourceLinks classResourceLinks = new ClassResourceLinks(uriInfo);
if (classId != 0 && termId != 0)
attendanceList = attendanceService.getAttendanceListByClassId(classId, termId);
else if (classId != 0)
attendanceList = attendanceService.getAttendanceListByClassId(classId);
else if (studentId != 0 && termId != 0)
attendanceList = attendanceService.getAttendanceListByStudentId(studentId, termId);
else if (studentId != 0)
attendanceList = attendanceService.getAttendanceListByStudentId(studentId);
else
attendanceList = attendanceService.getAttendanceList();
for (Attendance attendance : attendanceList) {
attendance.addLink(resourceLinks.self(attendance.getId()));
if (attendance.get_class() != null)
attendance.get_class().addLink(classResourceLinks.self(attendance.get_class().getId()));
}
GenericEntity<List<Attendance>> entity = new GenericEntity<List<Attendance>>(attendanceList) {
};
return Response.status(Response.Status.OK).entity(entity).build();
} catch (GradingFactorException e) {
e.printStackTrace();
Message message = new Message(404, "Not Found", e.getMessage());
return Response.status(Response.Status.NOT_FOUND).entity(message).build();
}
}
use of com.remswork.project.alice.model.Attendance in project classify-system by anverliedoit.
the class AttendanceResource method updateAttendanceById.
@PUT
@Path("{attendanceId}")
public Response updateAttendanceById(@PathParam("attendanceId") long id, Attendance newAttendance) {
try {
AttendanceResourceLinks resourceLinks = new AttendanceResourceLinks(uriInfo);
ClassResourceLinks classResourceLinks = new ClassResourceLinks(uriInfo);
Attendance attendance;
if (termId > 0)
attendance = attendanceService.updateAttendanceById(id, newAttendance, classId, termId);
else
attendance = attendanceService.updateAttendanceById(id, newAttendance, classId);
attendance.addLink(resourceLinks.self(attendance.getId()));
if (attendance.get_class() != null)
attendance.get_class().addLink(classResourceLinks.self(attendance.get_class().getId()));
return Response.status(Response.Status.OK).entity(attendance).build();
} catch (GradingFactorException e) {
e.printStackTrace();
Message message = new Message(400, "Bad Request", e.getMessage());
return Response.status(Response.Status.BAD_REQUEST).entity(message).build();
}
}
use of com.remswork.project.alice.model.Attendance in project classify-system by anverliedoit.
the class AttendanceResource method deleteAttendanceById.
@DELETE
@Path("{attendanceId}")
public Response deleteAttendanceById(@PathParam("attendanceId") long id) {
try {
AttendanceResourceLinks resourceLinks = new AttendanceResourceLinks(uriInfo);
ClassResourceLinks classResourceLinks = new ClassResourceLinks(uriInfo);
Attendance attendance = attendanceService.deleteAttendanceById(id);
attendance.addLink(resourceLinks.self(attendance.getId()));
if (attendance.get_class() != null)
attendance.get_class().addLink(classResourceLinks.self(attendance.get_class().getId()));
return Response.status(Response.Status.OK).entity(attendance).build();
} catch (GradingFactorException e) {
e.printStackTrace();
Message message = new Message(400, "Bad Request", e.getMessage());
return Response.status(Response.Status.BAD_REQUEST).entity(message).build();
}
}
use of com.remswork.project.alice.model.Attendance in project classify-system by anverliedoit.
the class AttendanceServiceImpl method getAttendanceListByStudentId.
@Override
public List<Attendance> getAttendanceListByStudentId(final long studentId) throws GradingFactorException {
final List<Attendance> attendanceList = new ArrayList<>();
try {
return new AsyncTask<String, List<Attendance>, List<Attendance>>() {
@Override
protected List<Attendance> doInBackground(String... args) {
try {
String link = "".concat(domain).concat("/").concat(baseUri).concat("/").concat(payload).concat("?studentId=").concat(String.valueOf(studentId));
URL url = new URL(link);
Gson gson = new Gson();
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("GET");
httpURLConnection.setRequestProperty("Content-Type", "application/json");
httpURLConnection.setRequestProperty("Accept", "application/json");
httpURLConnection.connect();
if (httpURLConnection.getResponseCode() == 200) {
InputStream inputStream = httpURLConnection.getInputStream();
String jsonData = "";
int data;
while ((data = inputStream.read()) != -1) {
jsonData += (char) data;
}
JSONArray jsonArray = new JSONArray(jsonData);
for (int ctr = 0; ctr < jsonArray.length(); ctr++) {
attendanceList.add(gson.fromJson(jsonArray.get(ctr).toString(), Attendance.class));
}
return attendanceList;
} else if (httpURLConnection.getResponseCode() == 404) {
InputStream inputStream = httpURLConnection.getInputStream();
String jsonData = "";
int data;
while ((data = inputStream.read()) != -1) {
jsonData += (char) data;
}
Message message = gson.fromJson(jsonData, Message.class);
Log.i("ServiceTAG", "Service : Attendance");
Log.i("ServiceTAG", "Status : " + message.getStatus());
Log.i("ServiceTAG", "Type : " + message.getType());
Log.i("ServiceTAG", "Message : " + message.getMessage());
return attendanceList;
} else
throw new GradingFactorException("Server Error");
} catch (GradingFactorException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
} catch (JSONException e) {
e.printStackTrace();
return null;
}
}
}.execute((String) null).get();
} catch (InterruptedException e) {
e.printStackTrace();
return null;
} catch (ExecutionException e) {
e.printStackTrace();
return null;
}
}
use of com.remswork.project.alice.model.Attendance in project classify-system by anverliedoit.
the class AttendanceServiceImpl method getAttendanceListByClassId.
@Override
public List<Attendance> getAttendanceListByClassId(final long classId, final long termId) throws GradingFactorException {
final List<Attendance> attendanceList = new ArrayList<>();
try {
return new AsyncTask<String, List<Attendance>, List<Attendance>>() {
@Override
protected List<Attendance> doInBackground(String... args) {
try {
String link = "".concat(domain).concat("/").concat(baseUri).concat("/").concat(payload).concat("?classId=").concat(String.valueOf(classId)).concat("&termId=").concat(String.valueOf(termId));
URL url = new URL(link);
Gson gson = new Gson();
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("GET");
httpURLConnection.setRequestProperty("Content-Type", "application/json");
httpURLConnection.setRequestProperty("Accept", "application/json");
httpURLConnection.connect();
if (httpURLConnection.getResponseCode() == 200) {
InputStream inputStream = httpURLConnection.getInputStream();
String jsonData = "";
int data;
while ((data = inputStream.read()) != -1) {
jsonData += (char) data;
}
JSONArray jsonArray = new JSONArray(jsonData);
for (int ctr = 0; ctr < jsonArray.length(); ctr++) {
attendanceList.add(gson.fromJson(jsonArray.get(ctr).toString(), Attendance.class));
}
return attendanceList;
} else if (httpURLConnection.getResponseCode() == 404) {
InputStream inputStream = httpURLConnection.getInputStream();
String jsonData = "";
int data;
while ((data = inputStream.read()) != -1) {
jsonData += (char) data;
}
Message message = gson.fromJson(jsonData, Message.class);
Log.i("ServiceTAG", "Service : Attendance");
Log.i("ServiceTAG", "Status : " + message.getStatus());
Log.i("ServiceTAG", "Type : " + message.getType());
Log.i("ServiceTAG", "Message : " + message.getMessage());
return attendanceList;
} else
throw new GradingFactorException("Server Error");
} catch (GradingFactorException e) {
e.printStackTrace();
return null;
} catch (IOException e) {
e.printStackTrace();
return null;
} catch (JSONException e) {
e.printStackTrace();
return null;
}
}
}.execute((String) null).get();
} catch (InterruptedException e) {
e.printStackTrace();
return null;
} catch (ExecutionException e) {
e.printStackTrace();
return null;
}
}
Aggregations