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.CoreConstants;
19 import ch.qos.logback.core.joran.spi.SaxEventInterpretationContext;
20 import ch.qos.logback.core.model.Model;
21 import ch.qos.logback.core.model.ParamModel;
22
23 public class ParamAction extends BaseModelAction {
24
25 @Override
26 protected boolean validPreconditions(SaxEventInterpretationContext intercon, String name, Attributes attributes) {
27 PreconditionValidator pv = new PreconditionValidator(this, intercon, name, attributes);
28 pv.validateNameAttribute();
29 pv.validateValueAttribute();
30
31 addWarn("<param> element is deprecated in favor of a more direct syntax." + atLine(intercon));
32 addWarn("For details see " + CoreConstants.CODES_URL + "#param");
33
34 return pv.isValid();
35
36 }
37
38 @Override
39 protected Model buildCurrentModel(SaxEventInterpretationContext interpretationContext, String name,
40 Attributes attributes) {
41 ParamModel paramModel = new ParamModel();
42 paramModel.setName(attributes.getValue(NAME_ATTRIBUTE));
43 paramModel.setValue(attributes.getValue(VALUE_ATTRIBUTE));
44 return paramModel;
45 }
46 }