@Override protected Object doTransform(Object src, Charset encoding) throws TransformerException { throw new TransformerException(I18nMessageFactory.createStaticMessage("Failure")); } }
/** * @param message the exception message */ public TransformerException(I18nMessage message, Transformer transformer) { super(message); this.transformer = transformer; addInfo(TRANSFORMER, transformer.toString()); }
/** * Transform the message with no event specified. */ @Override public final Object transform(Object src, Charset enc) throws TransformerException { try { return transform(src, enc, null); } catch (MessageTransformerException e) { // Try to avoid double-wrapping Throwable cause = e.getCause(); if (cause instanceof TransformerException) { TransformerException te = (TransformerException) cause; if (te.getTransformer() == this) { throw te; } } throw new TransformerException(e.getI18nMessage(), this, e); } }
/** * Check if the return class is supported by this transformer */ protected Object checkReturnClass(Object object, CoreEvent event) throws MessageTransformerException { try { checkTransformerReturnClass(this, object); } catch (TransformerException e) { throw new MessageTransformerException(createStaticMessage(e.getMessage()), this, event.getMessage()); } return object; }
@Override public Object transformMessage(CoreEvent event, Charset outputEncoding) throws MessageTransformerException { try { return callback.doTransform(event.getMessage()); } catch (MessageTransformerException e) { throw e; } catch (TransformerException e) { throw new MessageTransformerException(e.getI18nMessage(), this, e, event.getMessage()); } catch (Exception e) { throw new MessageTransformerException(this, e, event.getMessage()); } }
@Override protected Object doTransform(Object src, Charset encoding) throws TransformerException { String response = null; if (src instanceof String) { response = (String) src; } else if (src instanceof InputStream) { response = IOUtils.toString((InputStream) src); } if (response != null && response.contains("success")) { return response; } else { throw new TransformerException(createStaticMessage("Invalid response from flow: " + response)); } } }
/** * @param message the exception message * @param cause the exception that cause this exception to be thrown */ public TransformerException(I18nMessage message, Transformer transformer, Throwable cause) { super(message, cause); this.transformer = transformer; addInfo(TRANSFORMER, transformer.toString()); }
@Test @Ignore("MULE-10266 review how the transformationService is obtained when building an exception.") public void payloadInfoException() throws Exception { MuleException.verboseExceptions = true; CoreEvent testEvent = mock(CoreEvent.class); Object payload = mock(Object.class); // This has to be done this way since mockito doesn't allow to verify toString() when(payload.toString()).then(new FailAnswer("toString() expected not to be called.")); Message muleMessage = of(payload); when(transformationService.transform(muleMessage, DataType.STRING)) .thenThrow(new TransformerException(createStaticMessage("exception thrown"))); when(testEvent.getMessage()).thenReturn(muleMessage); MessagingException e = new MessagingException(createStaticMessage(message), testEvent); assertThat(e.getInfo().get(PAYLOAD_INFO_KEY), is(TransformerException.class.getName() + " while getting payload: exception thrown")); }
public TransformerException(Transformer transformer, Throwable cause) { super(cause); this.transformer = transformer; addInfo(TRANSFORMER, (transformer == null ? "null" : transformer.toString())); }
@Override protected Object doTransform(Object src, Charset outputEncoding) throws TransformerException { if (src == null) { return ArrayUtils.EMPTY_BYTE_ARRAY; } try { return StringUtils.hexStringToByteArray((String) src); } catch (Exception ex) { throw new TransformerException(this, ex); } }
public TransformerException(List<Transformer> transformers, Throwable cause) { super(cause); this.transformer = TransformerUtils.firstOrNull(transformers); addInfo(TRANSFORMER, TransformerUtils.toString(transformers)); }
@Override protected Object doTransform(Object src, Charset encoding) throws TransformerException { throw new TransformerException(I18nMessageFactory.createStaticMessage("Failure")); } }
public TransformerException(I18nMessage message, List<Transformer> transformers) { super(message); this.transformer = TransformerUtils.firstOrNull(transformers); addInfo(TRANSFORMER, TransformerUtils.toString(transformers)); }
@Override public Object doTransform(Object src, Charset enc) throws TransformerException { try { return ((DataHandler) src).getInputStream(); } catch (IOException e) { throw new TransformerException(this, e); } } }
public TransformerException(I18nMessage message, List<Transformer> transformers, Throwable cause) { super(message, cause); this.transformer = TransformerUtils.firstOrNull(transformers); addInfo(TRANSFORMER, TransformerUtils.toString(transformers)); }
@Override public Object doTransform(Object src, Charset outputEncoding) throws TransformerException { if (src instanceof LocalDateTime) { return Date.from(((LocalDateTime) src).atZone(ZoneId.systemDefault()).toInstant()); } else if (src instanceof LocalDate) { return Date.from(((LocalDate) src).atStartOfDay().atZone(ZoneId.systemDefault()).toInstant()); } throw new TransformerException(createStaticMessage("Unexpected input type: " + src.getClass().getName())); }
@Override protected Object doTransform(Object src, Charset encoding) throws TransformerException { try { return Enum.valueOf(enumClass, ((String) src)); } catch (Exception e) { throw new TransformerException(createStaticMessage(format("Could not transform value '%s' to an enum of type %s", src, enumClass.getName())), e); } }
protected String createStringFromOutputHandler(OutputHandler handler, Charset outputEncoding) throws TransformerException { ByteArrayOutputStream bytes = new ByteArrayOutputStream(); try { handler.write(getCurrentEvent(), bytes); return bytes.toString(outputEncoding.name()); } catch (IOException e) { throw new TransformerException(this, e); } }
@Override public Object doTransform(Object src, Charset encoding) throws TransformerException { if (src == null) { if (isAllowNullReturn()) { return null; } else { throw new TransformerException(createStaticMessage("Unable to transform null to a primitive")); } } else { String value = ((String) src).toLowerCase().trim(); Boolean transformed = MAPPING.get(value); if (transformed != null) { return transformed; } else { throw new TransformerException(createStaticMessage(format("Cannot transform String '%s' to boolean. Valid types are: [%s]", value, Joiner.on(", ").join(MAPPING.keySet())))); } } }
protected String createStringFromInputStream(InputStream input, Charset outputEncoding) throws TransformerException { try { ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); copyLarge(input, outputStream); return outputStream.toString(outputEncoding.name()); } catch (IOException e) { throw new TransformerException(errorReadingStream(), e); } finally { try { input.close(); } catch (IOException e) { logger.warn("Could not close stream", e); } } }