package net.sf.openrocket.file.simplesax;
import java.util.HashMap;
import net.sf.openrocket.aerodynamics.Warning;
import net.sf.openrocket.aerodynamics.WarningSet;
import org.xml.sax.SAXException;
/**
* A singleton element handler that does not accept any content in the element
* except whitespace text. All subelements are ignored and a warning is produced
* of them. It ignores any attributes.
* <p>
* This class can be used for elements that have no content but contain attributes.
*
* @author Sampo Niskanen <sampo.niskanen@iki.fi>
*/
public class NullElementHandler extends AbstractElementHandler {
public static final NullElementHandler INSTANCE = new NullElementHandler();
private static final HashMap<String, String> EMPTY_MAP = new HashMap<String,String>();
private NullElementHandler() {
}
@Override
public ElementHandler openElement(String element, HashMap<String, String> attributes,
WarningSet warnings) {
warnings.add(Warning.fromString("Unknown element " + element + ", ignoring."));
return null;
}
@Override
public void closeElement(String element, HashMap<String, String> attributes,
String content, WarningSet warnings) throws SAXException {
super.closeElement(element, EMPTY_MAP, content, warnings);
}
}