1
2
3
4
5
6
7
8
9
10
11 package chapter3.newRule;
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.action.NewRuleAction;
20 import ch.qos.logback.core.joran.spi.JoranException;
21 import ch.qos.logback.core.joran.spi.Pattern;
22 import ch.qos.logback.core.util.StatusPrinter;
23 import chapter3.SimpleConfigurator;
24 import chapter3.calculator.ComputationAction2;
25
26
27
28
29
30
31
32
33
34
35
36 public class NewRuleCalculator {
37 public static void main(String[] args) throws Exception {
38
39 Context context = new ContextBase();
40
41
42 Map<Pattern, Action> ruleMap = new HashMap<Pattern, Action>();
43
44
45 ruleMap.put(new Pattern("*/computation"), new ComputationAction2());
46
47
48
49
50
51 ruleMap.put(
52 new Pattern("/computation/new-rule"), new NewRuleAction());
53
54 SimpleConfigurator simpleConfigurator = new SimpleConfigurator(ruleMap);
55
56 simpleConfigurator.setContext(context);
57
58 try {
59 simpleConfigurator.doConfigure(args[0]);
60 } catch (JoranException e) {
61
62 StatusPrinter.print(context);
63 }
64 }
65 }