1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.imaging;
18
19
20
21
22
23
24 public class ImageWriteException extends ImagingException {
25 private static final long serialVersionUID = -1L;
26
27 public ImageWriteException(final String message) {
28 super(message);
29 }
30
31 public ImageWriteException(final String message, final Throwable cause) {
32 super(message, cause);
33 }
34
35 public ImageWriteException(final String message, final Object data) {
36 super(message + ": " + data + " (" + getType(data) + ")");
37 }
38
39 private static String getType(final Object value) {
40 if (value == null) {
41 return "null";
42 }
43 if (value instanceof Object[]) {
44 return "[Object[]: " + ((Object[]) value).length + "]";
45 }
46 if (value instanceof char[]) {
47 return "[char[]: " + ((char[]) value).length + "]";
48 }
49 if (value instanceof byte[]) {
50 return "[byte[]: " + ((byte[]) value).length + "]";
51 }
52 if (value instanceof short[]) {
53 return "[short[]: " + ((short[]) value).length + "]";
54 }
55 if (value instanceof int[]) {
56 return "[int[]: " + ((int[]) value).length + "]";
57 }
58 if (value instanceof long[]) {
59 return "[long[]: " + ((long[]) value).length + "]";
60 }
61 if (value instanceof float[]) {
62 return "[float[]: " + ((float[]) value).length + "]";
63 }
64 if (value instanceof double[]) {
65 return "[double[]: " + ((double[]) value).length + "]";
66 }
67 if (value instanceof boolean[]) {
68 return "[boolean[]: " + ((boolean[]) value).length + "]";
69 }
70 return value.getClass().getName();
71 }
72 }