Search in sources :

Example 16 with ClassServiceException

use of com.remswork.project.alice.web.service.exception.ClassServiceException in project classify-system by anverliedoit.

the class ClassServiceImpl method updateClassById.

@Override
public Class updateClassById(long id, Class newClass, long teacherId, long subjectId, long sectionId) throws ClassException {
    try {
        StringBuilder uri = new StringBuilder();
        uri.append(targetProperties.getDomain());
        uri.append("/");
        uri.append(targetProperties.getBaseUri());
        uri.append("/");
        uri.append(payload);
        uri.append("/");
        uri.append(id);
        Client client = ClientBuilder.newClient();
        WebTarget target = client.target(uri.toString());
        Builder builder = target.queryParam("teacherId", teacherId).queryParam("subjectId", subjectId).queryParam("sectionId", sectionId).request();
        builder.accept("application/json");
        Response response = builder.put(Entity.json(newClass));
        if (response.getStatus() == 200) {
            return (Class) response.readEntity(Class.class);
        } else if (response.getStatus() == 400) {
            Message message = (Message) response.readEntity(Message.class);
            throw new ClassServiceException(message.getMessage());
        } else
            throw new ClassServiceException("The request might invalid or server is down");
    } catch (ClassServiceException e) {
        throw new ClassException(e.getMessage());
    }
}
Also used : Response(javax.ws.rs.core.Response) ClassServiceException(com.remswork.project.alice.web.service.exception.ClassServiceException) Message(com.remswork.project.alice.model.support.Message) ClientBuilder(javax.ws.rs.client.ClientBuilder) Builder(javax.ws.rs.client.Invocation.Builder) ClassException(com.remswork.project.alice.exception.ClassException) Class(com.remswork.project.alice.model.Class) WebTarget(javax.ws.rs.client.WebTarget) Client(javax.ws.rs.client.Client)

Aggregations

ClassException (com.remswork.project.alice.exception.ClassException)16 Message (com.remswork.project.alice.model.support.Message)16 ClassServiceException (com.remswork.project.alice.web.service.exception.ClassServiceException)16 Client (javax.ws.rs.client.Client)16 WebTarget (javax.ws.rs.client.WebTarget)16 Response (javax.ws.rs.core.Response)16 Class (com.remswork.project.alice.model.Class)8 ClientBuilder (javax.ws.rs.client.ClientBuilder)7 Builder (javax.ws.rs.client.Invocation.Builder)7 GenericType (javax.ws.rs.core.GenericType)6 Schedule (com.remswork.project.alice.model.Schedule)4 Student (com.remswork.project.alice.model.Student)4 List (java.util.List)4 Set (java.util.Set)2