1 package ch.qos.logback.core.joran.action;
2
3 import org.xml.sax.Attributes;
4
5 import ch.qos.logback.core.joran.spi.SaxEventInterpretationContext;
6 import ch.qos.logback.core.model.AppenderModel;
7 import ch.qos.logback.core.model.Model;
8
9 public class AppenderAction extends BaseModelAction {
10
11 @Override
12 protected boolean validPreconditions(SaxEventInterpretationContext ic, String name, Attributes attributes) {
13 PreconditionValidator validator = new PreconditionValidator(this, ic, name, attributes);
14 validator.validateClassAttribute();
15 validator.validateNameAttribute();
16 return validator.isValid();
17 }
18
19 @Override
20 protected Model buildCurrentModel(SaxEventInterpretationContext interpretationContext, String name,
21 Attributes attributes) {
22 AppenderModel appenderModel = new AppenderModel();
23 appenderModel.setClassName(attributes.getValue(CLASS_ATTRIBUTE));
24 appenderModel.setName(attributes.getValue(NAME_ATTRIBUTE));
25 return appenderModel;
26 }
27
28 }