1
2
3
4
5
6
7
8
9
10
11 package chapter10.calculator;
12
13 import java.util.HashMap;
14 import java.util.Map;
15
16 import ch.qos.logback.core.Context;
17 import ch.qos.logback.core.ContextBase;
18 import ch.qos.logback.core.joran.action.Action;
19 import ch.qos.logback.core.joran.spi.Pattern;
20 import ch.qos.logback.core.util.StatusPrinter;
21 import chapter10.SimpleConfigurator;
22
23
24
25
26
27
28
29 public class Calculator1 {
30
31 public static void main(String[] args) throws Exception {
32 Context context = new ContextBase();
33
34 Map<Pattern, Action> ruleMap = new HashMap<Pattern, Action>();
35
36
37 ruleMap.put(new Pattern("/computation"), new ComputationAction1());
38
39
40 ruleMap.put(new Pattern("/computation/literal"), new LiteralAction());
41 ruleMap.put(new Pattern("/computation/add"), new AddAction());
42 ruleMap.put(new Pattern("/computation/multiply"), new MultiplyAction());
43
44 SimpleConfigurator simpleConfigurator = new SimpleConfigurator(ruleMap);
45
46 simpleConfigurator.setContext(context);
47
48 simpleConfigurator.doConfigure(args[0]);
49
50 StatusPrinter.print(context);
51 }
52 }