1
2
3
4
5
6
7
8
9
10
11
12
13
14 package ch.qos.logback.core.joran.action;
15
16 import org.xml.sax.Attributes;
17
18 import ch.qos.logback.core.joran.spi.SaxEventInterpretationContext;
19 import ch.qos.logback.core.model.DefineModel;
20 import ch.qos.logback.core.model.Model;
21
22
23
24
25
26
27
28
29 public class DefinePropertyAction extends BaseModelAction {
30
31 @Override
32 protected boolean validPreconditions(SaxEventInterpretationContext ic, String name, Attributes attributes) {
33 PreconditionValidator validator = new PreconditionValidator(this, ic, name, attributes);
34 validator.validateClassAttribute();
35 validator.validateNameAttribute();
36 return validator.isValid();
37 }
38
39 @Override
40 protected Model buildCurrentModel(SaxEventInterpretationContext interpretationContext, String name,
41 Attributes attributes) {
42 DefineModel defineModel = new DefineModel();
43 defineModel.setClassName(attributes.getValue(CLASS_ATTRIBUTE));
44 defineModel.setName(attributes.getValue(NAME_ATTRIBUTE));
45 defineModel.setScopeStr(attributes.getValue(SCOPE_ATTRIBUTE));
46 return defineModel;
47 }
48
49 }