1 package org.kite9.framework.logging;
2
3 import java.util.Collection;
4 import java.util.Map;
5 import java.util.Set;
6
7 /***
8 * Very simple abstraction class for all logging functions.
9 *
10 * @author robmoffat
11 *
12 */
13 public class Kite9Log {
14
15 Logable logFor;
16
17 public Kite9Log(Logable o) {
18 this.logFor = o;
19 }
20
21 public void send(String string) {
22 if (logFor.isLoggingEnabled())
23 System.out.println(logFor.getPrefix() + " " + string);
24 }
25
26 public void send(String prefix, Collection<?> items) {
27 if (logFor.isLoggingEnabled()) {
28 System.out.println(logFor.getPrefix() + " " + prefix);
29
30 StringBuffer sb = new StringBuffer();
31 for (Object o : items) {
32 sb.append("\t");
33 sb.append(o.toString());
34 sb.append("\n");
35 }
36
37 System.out.println(sb.toString());
38
39 }
40 }
41
42 public void send(String prefix, Table t) {
43 StringBuffer sb = new StringBuffer(1000);
44 t.display(sb);
45 send(prefix + sb.toString());
46 }
47
48 public void send(String prefix, Map<?, ?> items) {
49 if (logFor.isLoggingEnabled()) {
50 System.out.println(logFor.getPrefix() + " " + prefix);
51 Table t = new Table();
52 Set<?> keys = items.keySet();
53
54 for (Object object : keys) {
55 t.addRow(new Object[] { "\t", object.toString(), items.get(object).toString() });
56 }
57
58 StringBuffer sb = new StringBuffer();
59 t.display(sb);
60 System.out.println(sb.toString());
61 }
62 }
63
64 public void error(String string) {
65 System.err.println(logFor.getPrefix()+string);
66 }
67
68 public void error(String string, Throwable e) {
69 System.err.println(logFor.getPrefix()+string);
70 e.printStackTrace();
71 }
72 }