01: /*
02: * $Id: TransformerException.java 10489 2008-01-23 17:53:38Z dfeist $
03: * --------------------------------------------------------------------------------------
04: * Copyright (c) MuleSource, Inc. All rights reserved. http://www.mulesource.com
05: *
06: * The software in this package is published under the terms of the CPAL v1.0
07: * license, a copy of which has been included with this distribution in the
08: * LICENSE.txt file.
09: */
10:
11: package org.mule.api.transformer;
12:
13: import org.mule.api.endpoint.EndpointException;
14: import org.mule.config.i18n.Message;
15: import org.mule.transformer.TransformerUtils;
16:
17: import java.util.List;
18:
19: /**
20: * <code>TransformerException</code> is a simple exception that is thrown by
21: * transformers.
22: */
23:
24: public class TransformerException extends EndpointException {
25: /**
26: * Serial version
27: */
28: private static final long serialVersionUID = 2943589828020763649L;
29:
30: private transient Transformer transformer;
31:
32: /**
33: * @param message the exception message
34: */
35: public TransformerException(Message message, Transformer transformer) {
36: super (message);
37: this .transformer = transformer;
38: addInfo("Transformer", transformer.toString());
39: }
40:
41: public TransformerException(Message message, List transformers) {
42: super (message);
43: this .transformer = TransformerUtils.firstOrNull(transformers);
44: addInfo("Transformer", TransformerUtils.toString(transformers));
45: }
46:
47: /**
48: * @param message the exception message
49: * @param cause the exception that cause this exception to be thrown
50: */
51: public TransformerException(Message message,
52: Transformer transformer, Throwable cause) {
53: super (message, cause);
54: this .transformer = transformer;
55: addInfo("Transformer", transformer.toString());
56: }
57:
58: public TransformerException(Message message, List transformers,
59: Throwable cause) {
60: super (message, cause);
61: this .transformer = TransformerUtils.firstOrNull(transformers);
62: addInfo("Transformer", TransformerUtils.toString(transformers));
63: }
64:
65: public TransformerException(Transformer transformer, Throwable cause) {
66: super (cause);
67: this .transformer = transformer;
68: addInfo("Transformer", (transformer == null ? "null"
69: : transformer.toString()));
70: }
71:
72: public TransformerException(List transformers, Throwable cause) {
73: super (cause);
74: this .transformer = TransformerUtils.firstOrNull(transformers);
75: addInfo("Transformer", TransformerUtils.toString(transformers));
76: }
77:
78: /**
79: * @param message the exception message
80: * @param cause the exception that cause this exception to be thrown
81: */
82: public TransformerException(Message message, Throwable cause) {
83: super (message, cause);
84: }
85:
86: /**
87: * @param message the exception message
88: */
89: public TransformerException(Message message) {
90: super (message);
91: }
92:
93: public Transformer getTransformer() {
94: return transformer;
95: }
96: }
|