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