1 |
| |
2 |
| |
3 |
| |
4 |
| |
5 |
| |
6 |
| |
7 |
| |
8 |
| |
9 |
| |
10 |
| |
11 |
| |
12 |
| |
13 |
| |
14 |
| |
15 |
| package org.apache.hivemind.service.impl; |
16 |
| |
17 |
| import org.apache.commons.logging.Log; |
18 |
| import org.apache.hivemind.service.ClassFabUtils; |
19 |
| |
20 |
| |
21 |
| |
22 |
| |
23 |
| |
24 |
| |
25 |
| |
26 |
| public class LoggingUtils |
27 |
| { |
28 |
| private static final int BUFFER_SIZE = 100; |
29 |
| |
30 |
19
| public static void entry(Log log, String methodName, Object[] args)
|
31 |
| { |
32 |
19
| StringBuffer buffer = new StringBuffer(BUFFER_SIZE);
|
33 |
| |
34 |
19
| buffer.append("BEGIN ");
|
35 |
19
| buffer.append(methodName);
|
36 |
19
| buffer.append("(");
|
37 |
| |
38 |
19
| int count = (args == null) ? 0 : args.length;
|
39 |
| |
40 |
19
| for (int i = 0; i < count; i++)
|
41 |
| { |
42 |
7
| Object arg = args[i];
|
43 |
| |
44 |
7
| if (i > 0)
|
45 |
2
| buffer.append(", ");
|
46 |
| |
47 |
7
| convert(buffer, arg);
|
48 |
| } |
49 |
| |
50 |
19
| buffer.append(")");
|
51 |
| |
52 |
19
| log.debug(buffer.toString());
|
53 |
| } |
54 |
| |
55 |
12
| public static void exit(Log log, String methodName, Object result)
|
56 |
| { |
57 |
12
| StringBuffer buffer = new StringBuffer(BUFFER_SIZE);
|
58 |
| |
59 |
12
| buffer.append("END ");
|
60 |
12
| buffer.append(methodName);
|
61 |
12
| buffer.append("() [");
|
62 |
| |
63 |
12
| convert(buffer, result);
|
64 |
| |
65 |
12
| buffer.append("]");
|
66 |
| |
67 |
12
| log.debug(buffer.toString());
|
68 |
| } |
69 |
| |
70 |
6
| public static void voidExit(Log log, String methodName)
|
71 |
| { |
72 |
6
| StringBuffer buffer = new StringBuffer(BUFFER_SIZE);
|
73 |
| |
74 |
6
| buffer.append("END ");
|
75 |
6
| buffer.append(methodName);
|
76 |
6
| buffer.append("()");
|
77 |
| |
78 |
6
| log.debug(buffer.toString());
|
79 |
| } |
80 |
| |
81 |
1
| public static void exception(Log log, String methodName, Throwable t)
|
82 |
| { |
83 |
1
| StringBuffer buffer = new StringBuffer(BUFFER_SIZE);
|
84 |
| |
85 |
1
| buffer.append("EXCEPTION ");
|
86 |
1
| buffer.append(methodName);
|
87 |
1
| buffer.append("() -- ");
|
88 |
| |
89 |
1
| buffer.append(t.getClass().getName());
|
90 |
| |
91 |
1
| log.debug(buffer.toString(), t);
|
92 |
| } |
93 |
| |
94 |
21
| public static void convert(StringBuffer buffer, Object input)
|
95 |
| { |
96 |
21
| if (input == null)
|
97 |
| { |
98 |
4
| buffer.append("<null>");
|
99 |
4
| return;
|
100 |
| } |
101 |
| |
102 |
| |
103 |
| |
104 |
| |
105 |
| |
106 |
17
| if (!(input instanceof Object[]))
|
107 |
| { |
108 |
16
| buffer.append(input.toString());
|
109 |
16
| return;
|
110 |
| } |
111 |
| |
112 |
1
| buffer.append("(");
|
113 |
1
| buffer.append(ClassFabUtils.getJavaClassName(input.getClass()));
|
114 |
1
| buffer.append("){");
|
115 |
| |
116 |
1
| Object[] array = (Object[]) input;
|
117 |
1
| int count = array.length;
|
118 |
| |
119 |
1
| for (int i = 0; i < count; i++)
|
120 |
| { |
121 |
2
| if (i > 0)
|
122 |
1
| buffer.append(", ");
|
123 |
| |
124 |
| |
125 |
| |
126 |
2
| convert(buffer, array[i]);
|
127 |
| } |
128 |
| |
129 |
1
| buffer.append("}");
|
130 |
| } |
131 |
| } |