Search in sources :

Example 26 with Fault

use of org.ovirt.engine.api.model.Fault in project ovirt-engine by oVirt.

the class ValidationExceptionMapper method toResponse.

@Override
public Response toResponse(ValidationException exception) {
    log.error("Input validation failed while processing '{}' request for path '{}'.", request.getMethod(), uriInfo.getPath());
    log.error("Exception", exception);
    final Fault fault = new Fault();
    fault.setReason("Input validation failed.");
    fault.setDetail(exception.getMessage());
    return Response.status(Status.BAD_REQUEST).entity(fault).build();
}
Also used : Fault(org.ovirt.engine.api.model.Fault)

Example 27 with Fault

use of org.ovirt.engine.api.model.Fault in project ovirt-engine by oVirt.

the class UsageFinderTest method testAction.

@Test
public void testAction() {
    try {
        UriInfo uriInfo = mockUri("vms", "00000001-0001-0001-0001-000000000011", "freezefilesystems");
        Request request = mockRequest("POST");
        Fault fault = usageFinder.getUsageMessage(uriInfo, request);
        assertEquals("For correct usage, see: http://localhost:8080/ovirt-engine/apidoc#services/vm/methods/freeze_filesystems", fault.getDetail());
    } catch (URISyntaxException | ClassNotFoundException | IOException e) {
        fail();
    }
}
Also used : Request(javax.ws.rs.core.Request) Fault(org.ovirt.engine.api.model.Fault) URISyntaxException(java.net.URISyntaxException) IOException(java.io.IOException) UriInfo(javax.ws.rs.core.UriInfo) Test(org.junit.Test)

Example 28 with Fault

use of org.ovirt.engine.api.model.Fault in project ovirt-engine by oVirt.

the class BackendGlusterBricksResourceTest method testListFailure.

@Override
@Test
public void testListFailure() throws Exception {
    setUpBricksQueryExpectations(FAILURE);
    UriInfo uriInfo = setUpUriExpectations(null);
    collection.setUriInfo(uriInfo);
    try {
        getCollection();
        fail("expected WebApplicationException");
    } catch (WebApplicationException wae) {
        assertTrue(wae.getResponse().getEntity() instanceof Fault);
        assertEquals(mockl10n(FAILURE), ((Fault) wae.getResponse().getEntity()).getDetail());
    }
}
Also used : WebApplicationException(javax.ws.rs.WebApplicationException) Fault(org.ovirt.engine.api.model.Fault) UriInfo(javax.ws.rs.core.UriInfo) Test(org.junit.Test) AbstractBackendCollectionResourceTest(org.ovirt.engine.api.restapi.resource.AbstractBackendCollectionResourceTest)

Example 29 with Fault

use of org.ovirt.engine.api.model.Fault in project ovirt-engine by oVirt.

the class CompletenessAssertor method assertRequired.

/**
 * Validate presence of required parameters.
 *
 * @param reason         the fault reason
 * @param detail         the fault detail
 * @param model          the incoming representation
 * @param frameOffset    the stack frame offset of the public resource method
 * @param missingMembers the stack frame offset of the public resource method
 * @param required       the required field names
 * @return               error Response if appropriate
 */
private static Response assertRequired(String reason, String detail, Object model, int frameOffset, String... required) {
    List<String> missing = doAssertRequired(reason, detail, model, frameOffset, required);
    Response response = null;
    if (!missing.isEmpty()) {
        StackTraceElement[] trace = new Throwable().getStackTrace();
        Fault fault = new Fault();
        fault.setReason(reason);
        fault.setDetail(MessageFormat.format(detail, model.getClass().getSimpleName(), missing, trace[frameOffset + 1].getMethodName()));
        response = Response.status(INCOMPLETE_PARAMS_STATUS).entity(fault).build();
    }
    return response;
}
Also used : Response(javax.ws.rs.core.Response) Fault(org.ovirt.engine.api.model.Fault)

Example 30 with Fault

use of org.ovirt.engine.api.model.Fault in project ovirt-engine by oVirt.

the class EnumValidator method fault.

private static Fault fault(String reason, String detail) {
    Fault fault = new Fault();
    fault.setReason(reason);
    fault.setDetail(detail);
    return fault;
}
Also used : Fault(org.ovirt.engine.api.model.Fault)

Aggregations

Fault (org.ovirt.engine.api.model.Fault)42 WebApplicationException (javax.ws.rs.WebApplicationException)17 Test (org.junit.Test)15 UriInfo (javax.ws.rs.core.UriInfo)14 IOException (java.io.IOException)4 URISyntaxException (java.net.URISyntaxException)3 Request (javax.ws.rs.core.Request)3 AbstractBackendCollectionResourceTest (org.ovirt.engine.api.restapi.resource.AbstractBackendCollectionResourceTest)3 Action (org.ovirt.engine.api.model.Action)2 CreationStatus (org.ovirt.engine.api.model.CreationStatus)2 AsyncTaskStatus (org.ovirt.engine.core.common.businessentities.AsyncTaskStatus)2 Response (javax.ws.rs.core.Response)1 Creation (org.ovirt.engine.api.model.Creation)1 GlusterBrick (org.ovirt.engine.api.model.GlusterBrick)1 Vm (org.ovirt.engine.api.model.Vm)1 AbstractBackendSubResourceTest (org.ovirt.engine.api.restapi.resource.AbstractBackendSubResourceTest)1 InvalidValueException (org.ovirt.engine.api.utils.InvalidValueException)1 ActionType (org.ovirt.engine.core.common.action.ActionType)1 RemoveStorageDomainParameters (org.ovirt.engine.core.common.action.RemoveStorageDomainParameters)1 RunVmParams (org.ovirt.engine.core.common.action.RunVmParams)1