@Override public V3Fault adapt(Fault from) { V3Fault to = new V3Fault(); if (from.isSetReason()) { to.setReason(from.getReason()); } if (from.isSetDetail()) { to.setDetail(from.getDetail()); } return to; } }
@Override public Response toResponse(MappingException exception) { log.error( "Mapping exception while processing \"{}\" request for path \"{}\"", request.getMethod(), uriInfo.getPath() ); log.error("Exception", exception); final Fault fault = new Fault(); fault.setReason("Operation Failed"); return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(fault).build(); } }
@Override protected void verifyFault(WebApplicationException wae, String reason, Throwable t) { assertEquals(BAD_REQUEST, wae.getResponse().getStatus()); assertTrue(wae.getResponse().getEntity() instanceof Fault); Fault fault = (Fault) wae.getResponse().getEntity(); assertEquals(reason, fault.getReason()); assertNotNull(fault.getDetail()); assertTrue(fault.getDetail().contains(t.getMessage()), "expected detail to include: " + t.getMessage()); }
@Mapping(from = List.class, to = Action.class) public static Action map(List<AsyncTaskStatus> entity, Action template) { Action model = template != null ? template : new Action(); CreationStatus asyncStatus = null; for (AsyncTaskStatus task : entity) { asyncStatus = AsyncTaskMapper.map(task, asyncStatus); } model.setStatus(asyncStatus.value()); if (asyncStatus == CreationStatus.FAILED) { model.setFault(new Fault()); for (AsyncTaskStatus task : entity) { if (task.getException() != null) { model.getFault().setDetail(task.getException().toString()); break; } } } return model; } }
protected void verifyFault(WebApplicationException wae) { assertTrue(wae.getResponse().getEntity() instanceof Fault); assertEquals(mockl10n(FAILURE), ((Fault) wae.getResponse().getEntity()).getDetail()); }
/** * Create an instance of {@link Fault } * */ public Fault createFault() { return new Fault(); }
protected void setReason(Fault fault) { fault.setReason(localize(Messages.ASYNCHRONOUS_TASK_FAILED)); } }
@Test public void testFenceStatusFailure() { FenceOperationResult retVal = new FenceOperationResult(FenceOperationResult.Status.ERROR, PowerStatus.UNKNOWN, "some_error"); setUpEntityQueryExpectations(QueryType.GetVdsFenceStatus, IdQueryParameters.class, new String[] { "Id" }, new Object[] { GUIDS[0] }, retVal); Action action = new Action(); action.setFenceType(FenceType.STATUS.value()); Response response = resource.fence(action); Action actionReturned = (Action)response.getEntity(); assertEquals(actionReturned.getStatus(), CreationStatus.FAILED.value()); assertNotNull(actionReturned.getFault()); assertEquals("some_error", actionReturned.getFault().getReason()); }
@Mapping(from = List.class, to = Creation.class) public static Creation map(List<AsyncTaskStatus> entity, Creation template) { Creation model = template != null ? template : new Creation(); CreationStatus asyncStatus = null; for (AsyncTaskStatus task : entity) { asyncStatus = AsyncTaskMapper.map(task, asyncStatus); } model.setStatus(asyncStatus.value()); if (asyncStatus == CreationStatus.FAILED) { model.setFault(new Fault()); for (AsyncTaskStatus task : entity) { if (task.getException() != null) { model.getFault().setDetail(task.getException().toString()); break; } } } return model; } }
@Test public void testAction() throws Exception { 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()); }
private void validateBrickNames(Action action) { List<GlusterBrick> bricks = action.getBricks().getGlusterBricks(); for (GlusterBrick brick : bricks) { if (brick.getName() == null || brick.getName().equals("")) { Fault fault = new Fault(); fault.setReason(localize(Messages.INCOMPLETE_PARAMS_REASON)); throw new WebApplicationException(Response.status(Response.Status.BAD_REQUEST) .entity(fault) .build()); } } }
@Override protected void verifyFault(WebApplicationException wae, String reason, Throwable t) { assertEquals(BAD_REQUEST, wae.getResponse().getStatus()); assertTrue(wae.getResponse().getEntity() instanceof Fault); Fault fault = (Fault) wae.getResponse().getEntity(); assertEquals(reason, fault.getReason()); assertNotNull(fault.getDetail()); assertTrue(fault.getDetail().contains(t.getMessage()), "expected detail to include: " + t.getMessage()); }
@Test public void testAdd() throws Exception { UriInfo uriInfo = mockUri("hosts", "00000001-0001-0001-0001-000000000011", "nics"); Request request = mockRequest("POST"); Fault fault = usageFinder.getUsageMessage(uriInfo, request); assertEquals("For correct usage, see: http://localhost:8080/ovirt-engine/apidoc#services/host_nics/methods/add", fault.getDetail()); }
/** * A method handling GET requests with media type x-virt-viewer. * Returns a console representation usable by virt-viewer client (e.g. a .vv file) * * @return a console representation for virt-viewer (e.g. a .vv file) */ @GET @Produces(ApiMediaType.APPLICATION_X_VIRT_VIEWER) public Response generateDescriptor() { try { QueryReturnValue consoleDescriptorReturnValue = generateDescriptorResponse(); Response.ResponseBuilder builder; if (consoleDescriptorReturnValue.getSucceeded() && consoleDescriptorReturnValue.getReturnValue() != null) { builder = Response.ok(((String) consoleDescriptorReturnValue.getReturnValue()) .getBytes(StandardCharsets.UTF_8), ApiMediaType.APPLICATION_X_VIRT_VIEWER); } else { Fault fault = new Fault(); fault.setReason(consoleDescriptorReturnValue.getExceptionString()); builder = Response.status(Response.Status.CONFLICT).type(ApiMediaType.APPLICATION_XML).entity(fault); } return builder.build(); } catch (Exception ex) { return handleConfigureConsoleError(ex.getMessage()); } }
protected void verifyFault(WebApplicationException wae, String reason, Throwable t) { assertEquals(SERVER_ERROR, wae.getResponse().getStatus()); assertTrue(wae.getResponse().getEntity() instanceof Fault); Fault fault = (Fault) wae.getResponse().getEntity(); assertEquals(reason, fault.getReason()); assertNotNull(fault.getDetail()); assertTrue(fault.getDetail().contains(t.getMessage()), "expected detail to include: " + t.getMessage()); }