com.feilong.lib.digester3.xmlrules.PatternRule Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of feilong Show documentation
Show all versions of feilong Show documentation
feilong is a suite of core and expanded libraries that include utility classes, http, excel,cvs, io classes, and much much more.
package com.feilong.lib.digester3.xmlrules;
import org.xml.sax.Attributes;
import com.feilong.lib.digester3.Rule;
/**
*
*/
class PatternRule extends Rule{
private final String attributeName;
private final PatternStack patternStack;
private String pattern;
public PatternRule(PatternStack patternStack){
this("value", patternStack);
}
public PatternRule(String attributeName, PatternStack patternStack){
this.attributeName = attributeName;
this.patternStack = patternStack;
}
/**
* {@inheritDoc}
*/
@Override
public void begin(String namespace,String name,Attributes attributes) throws Exception{
this.pattern = attributes.getValue(this.attributeName);
if (this.pattern != null){
this.patternStack.push(pattern);
}
}
/**
* {@inheritDoc}
*/
@Override
public void end(String namespace,String name) throws Exception{
if (this.pattern != null){
this.patternStack.pop();
}
}
/**
* @return
*/
protected String getMatchingPattern(){
return this.patternStack.toString();
}
}