Search in sources :

Example 1 with ClassScheduleListResourceLinks

use of com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks in project classify-system by anverliedoit.

the class ClassScheduleListResource method getScheduleList.

@GET
public Response getScheduleList(@PathParam("classId") long classId) {
    try {
        ClassScheduleListResourceLinks resourceLinks = new ClassScheduleListResourceLinks(uriInfo);
        Set<Schedule> scheduleSet = classService.getScheduleList(classId);
        for (Schedule schedule : scheduleSet) schedule.addLink(resourceLinks.self(classId, schedule.getId()));
        GenericEntity<Set<Schedule>> entity = new GenericEntity<Set<Schedule>>(scheduleSet) {
        };
        return Response.status(Response.Status.OK).entity(entity).build();
    } catch (ClassException e) {
        e.printStackTrace();
        Message message = new Message(404, "Not Found", e.getMessage());
        return Response.status(Response.Status.NOT_FOUND).entity(message).build();
    }
}
Also used : Set(java.util.Set) ClassScheduleListResourceLinks(com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks) Message(com.remswork.project.alice.model.support.Message) GenericEntity(javax.ws.rs.core.GenericEntity) Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException)

Example 2 with ClassScheduleListResourceLinks

use of com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks in project classify-system by anverliedoit.

the class ClassScheduleListResource method getScheduleById.

@GET
@Path("{scheduleId}")
public Response getScheduleById(@PathParam("classId") long classId, @PathParam("scheduleId") long id) {
    try {
        ClassScheduleListResourceLinks resourceLinks = new ClassScheduleListResourceLinks(uriInfo);
        Schedule schedule = classService.getScheduleById(classId, id);
        schedule.addLink(resourceLinks.self(classId, id));
        return Response.status(Response.Status.OK).entity(schedule).build();
    } catch (ClassException e) {
        e.printStackTrace();
        Message message = new Message(404, "Not Found", e.getMessage());
        return Response.status(Response.Status.NOT_FOUND).entity(message).build();
    }
}
Also used : ClassScheduleListResourceLinks(com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks) Message(com.remswork.project.alice.model.support.Message) Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException)

Example 3 with ClassScheduleListResourceLinks

use of com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks in project classify-system by anverliedoit.

the class ClassScheduleListResource method addScheduleById.

@POST
public Response addScheduleById(@PathParam("classId") long classId) {
    try {
        ClassScheduleListResourceLinks resourceLinks = new ClassScheduleListResourceLinks(uriInfo);
        if (scheduleId == 0)
            throw new ClassDaoException("Query param : scheduleId is required");
        Schedule schedule = classService.addScheduleById(classId, scheduleId);
        schedule.addLink(resourceLinks.self(classId, scheduleId));
        return Response.status(Response.Status.OK).entity(schedule).build();
    } catch (ClassException | ClassDaoException e) {
        e.printStackTrace();
        Message message = new Message(400, "Bad Request", e.getMessage());
        return Response.status(Response.Status.BAD_REQUEST).entity(message).build();
    }
}
Also used : ClassScheduleListResourceLinks(com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks) ClassDaoException(com.remswork.project.alice.dao.exception.ClassDaoException) Message(com.remswork.project.alice.model.support.Message) Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException)

Example 4 with ClassScheduleListResourceLinks

use of com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks in project classify-system by anverliedoit.

the class ClassScheduleListResource method deleteScheduleById.

@DELETE
@Path("{scheduleId}")
public Response deleteScheduleById(@PathParam("classId") long classId, @PathParam("scheduleId") long id) {
    try {
        ClassScheduleListResourceLinks resourceLinks = new ClassScheduleListResourceLinks(uriInfo);
        Schedule schedule = classService.deleteScheduleById(classId, id);
        schedule.addLink(resourceLinks.self(classId, id));
        return Response.status(Response.Status.OK).entity(schedule).build();
    } catch (ClassException e) {
        e.printStackTrace();
        Message message = new Message(400, "Bad Request", e.getMessage());
        return Response.status(Response.Status.BAD_REQUEST).entity(message).build();
    }
}
Also used : ClassScheduleListResourceLinks(com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks) Message(com.remswork.project.alice.model.support.Message) Schedule(com.remswork.project.alice.model.Schedule) ClassException(com.remswork.project.alice.exception.ClassException)

Aggregations

ClassException (com.remswork.project.alice.exception.ClassException)4 Schedule (com.remswork.project.alice.model.Schedule)4 Message (com.remswork.project.alice.model.support.Message)4 ClassScheduleListResourceLinks (com.remswork.project.alice.resource.links.ClassScheduleListResourceLinks)4 ClassDaoException (com.remswork.project.alice.dao.exception.ClassDaoException)1 Set (java.util.Set)1 GenericEntity (javax.ws.rs.core.GenericEntity)1