1 17 18 19 20 package embedding.tools; 21 22 import java.io.IOException ; 24 import java.util.Map ; 25 26 import org.xml.sax.SAXException ; 28 import org.xml.sax.InputSource ; 29 import org.xml.sax.XMLReader ; 30 import org.xml.sax.ContentHandler ; 31 import org.xml.sax.DTDHandler ; 32 import org.xml.sax.ErrorHandler ; 33 import org.xml.sax.EntityResolver ; 34 35 39 40 public abstract class AbstractObjectReader implements XMLReader { 41 42 private static final String NAMESPACES = 43 "http://xml.org/sax/features/namespaces"; 44 private static final String NS_PREFIXES = 45 "http://xml.org/sax/features/namespace-prefixes"; 46 47 private Map features = new java.util.HashMap (); 48 private ContentHandler orgHandler; 49 50 51 protected EasyGenerationContentHandlerProxy handler; 52 53 protected ErrorHandler errorHandler; 54 55 56 59 public AbstractObjectReader() { 60 setFeature(NAMESPACES, false); 61 setFeature(NS_PREFIXES, false); 62 } 63 64 65 66 69 public ContentHandler getContentHandler() { 70 return this.orgHandler; 71 } 72 73 76 public void setContentHandler(ContentHandler handler) { 77 this.orgHandler = handler; 78 this.handler = new EasyGenerationContentHandlerProxy(handler); 79 } 80 81 84 public ErrorHandler getErrorHandler() { 85 return this.errorHandler; 86 } 87 88 91 public void setErrorHandler(ErrorHandler handler) { 92 this.errorHandler = handler; 93 } 94 95 98 public DTDHandler getDTDHandler() { 99 return null; 100 } 101 102 105 public void setDTDHandler(DTDHandler handler) { 106 } 107 108 111 public EntityResolver getEntityResolver() { 112 return null; 113 } 114 115 118 public void setEntityResolver(EntityResolver resolver) { 119 } 120 121 124 public Object getProperty(java.lang.String name) { 125 return null; 126 } 127 128 131 public void setProperty(java.lang.String name, java.lang.Object value) { 132 } 133 134 137 public boolean getFeature(java.lang.String name) { 138 return ((Boolean ) features.get(name)).booleanValue(); 139 } 140 141 145 protected boolean isNamespaces() { 146 return getFeature(NAMESPACES); 147 } 148 149 153 protected boolean isNamespacePrefixes() { 154 return getFeature(NS_PREFIXES); 155 } 156 157 160 public void setFeature(java.lang.String name, boolean value) { 161 this.features.put(name, new Boolean (value)); 162 } 163 164 167 public void parse(String systemId) throws IOException , SAXException { 168 throw new SAXException ( 169 this.getClass().getName() 170 + " cannot be used with system identifiers (URIs)"); 171 } 172 173 176 public abstract void parse(InputSource input) 177 throws IOException , SAXException ; 178 179 } 180 | Popular Tags |