Example usage for org.xml.sax XMLReader setContentHandler

List of usage examples for org.xml.sax XMLReader setContentHandler

Introduction

In this page you can find the example usage for org.xml.sax XMLReader setContentHandler.

Prototype

public void setContentHandler(ContentHandler handler);

Source Link

Document

Allow an application to register a content event handler.

Usage

From source file:io.milton.http.LockInfoSaxHandler.java

public static LockInfo parseLockInfo(Request request) throws IOException, FileNotFoundException, SAXException {
    InputStream in = request.getInputStream();

    XMLReader reader = XMLReaderFactory.createXMLReader();
    reader.setFeature("http://xml.org/sax/features/external-parameter-entities", false);

    LockInfoSaxHandler handler = new LockInfoSaxHandler();
    reader.setContentHandler(handler);
    if (log.isDebugEnabled()) {
        ByteArrayOutputStream bout = new ByteArrayOutputStream();
        IOUtils.copy(in, bout);//ww w.  j av a2  s . c om
        byte[] bytes = bout.toByteArray();
        in = new ByteArrayInputStream(bytes);
        log.debug("LockInfo: " + bout.toString());
    }
    reader.parse(new InputSource(in));
    LockInfo info = handler.getInfo();
    info.depth = LockDepth.INFINITY; // todo
    if (info.lockedByUser == null) {
        if (request.getAuthorization() != null) {
            if (request.getAuthorization().getUser() != null) {
                info.lockedByUser = request.getAuthorization().getUser();
            } else {
                Object user = request.getAuthorization().getTag();
                if (user instanceof DiscretePrincipal) {
                    DiscretePrincipal dp = (DiscretePrincipal) user;
                    info.lockedByUser = dp.getPrincipalURL();
                }
            }

        }
    }
    if (info.lockedByUser == null) {
        log.warn("resource is being locked with a null user. This won't really be locked at all...");
    }
    return info;
}

From source file:net.ontopia.topicmaps.entry.XMLConfigSource.java

private static List<TopicMapSourceIF> readSources(InputSource inp_source, Map<String, String> environ) {
    ConfigHandler handler = new ConfigHandler(environ);

    try {/* www  . j a  v a2  s .  c o  m*/
        XMLReader parser = DefaultXMLReaderFactory.createXMLReader();
        parser.setContentHandler(handler);
        parser.setErrorHandler(new Slf4jSaxErrorHandler(log));
        parser.parse(inp_source);
    } catch (SAXParseException e) {
        String msg = "" + e.getSystemId() + ":" + e.getLineNumber() + ":" + e.getColumnNumber() + ": "
                + e.getMessage();
        throw new OntopiaRuntimeException(msg, e);
    } catch (Exception e) {
        throw new OntopiaRuntimeException(e);
    }
    return handler.sources;
}

From source file:nl.b3p.kaartenbalie.service.ImageCollector.java

/** 
 *
 * @param byteStream InputStream object in which the serviceexception is stored.
 *
 * @ return String with the given exception
 *
 * @throws IOException, SAXException// www. j  a  v  a  2 s  .  c o m
 */
private static String getServiceException(InputStream byteStream) throws IOException, SAXException {
    Switcher s = new Switcher();
    s.setElementHandler("ServiceException", new ServiceExceptionHandler());

    XMLReader reader = org.xml.sax.helpers.XMLReaderFactory.createXMLReader();

    IgnoreEntityResolver r = new IgnoreEntityResolver();
    reader.setEntityResolver(r);

    reader.setContentHandler(s);
    InputSource is = new InputSource(byteStream);
    is.setEncoding(KBConfiguration.CHARSET);
    reader.parse(is);
    return (String) stack.pop();
}

From source file:gov.nih.nci.ncicb.tcga.dcc.common.jaxb.JAXBUtil.java

private static SAXSource applyMetaDataNamespaceFilter(final Unmarshaller unmarshaller,
        final Reader xmlFileReader) throws SAXException, ParserConfigurationException, FileNotFoundException {

    final SAXParserFactory factory = SAXParserFactory.newInstance();
    factory.setNamespaceAware(true); // this should not be changed!
    final XMLReader reader = factory.newSAXParser().getXMLReader();
    final XMLFilterImpl xmlFilter = new MetaDataXMLNamespaceFilter(reader);
    reader.setContentHandler(unmarshaller.getUnmarshallerHandler());

    return new SAXSource(xmlFilter, new InputSource(xmlFileReader));
}

From source file:info.unyttig.helladroid.newzbin.NewzBinController.java

/**
 * Fetches a report from Newzbin based on a given id.
 * However if the report is already cached, its just fetched from the hashmap.
 * @param id//from w w  w.ja v a  2 s . c om
 */
public static NewzBinReport getReportInfo(int id) {
    if (detailedReports.containsKey(id))
        return detailedReports.get(id);

    String url = NBAPIURL + "reportinfo/";
    HashMap<String, String> searchOptions = new HashMap<String, String>();
    searchOptions.put("id", "" + id);
    try {
        HttpResponse response = doPost(url, searchOptions);
        checkReturnCode(response.getStatusLine().getStatusCode(), false);
        InputStream is = response.getEntity().getContent();

        SAXParserFactory spf = SAXParserFactory.newInstance();
        SAXParser sp = spf.newSAXParser();
        XMLReader xr = sp.getXMLReader();
        NewzBinDRHandler handler = new NewzBinDRHandler();
        if (reports.containsKey(id))
            handler.nbdr = reports.get(id);
        xr.setContentHandler(handler);
        xr.parse(new InputSource(is));
        detailedReports.put(id, handler.getParsedData());
        // Temp
        ArrayList<NewzBinReportComment> comments = handler.nbdr.getComments();
        Log.i(LOG_NAME, "Comments size: " + comments.size());
        Iterator<NewzBinReportComment> sd = comments.iterator();
        while (sd.hasNext()) {
            NewzBinReportComment nrc = sd.next();
            Log.i(LOG_NAME, nrc.toString());
        }
        return handler.getParsedData();
    } catch (ClientProtocolException e) {
        Log.e(LOG_NAME, "ClientProtocol thrown: ", e);
    } catch (IOException e) {
        Log.e(LOG_NAME, "IOException thrown: ", e);
    } catch (NewzBinPostReturnCodeException e) {
        Log.e(LOG_NAME, "POST ReturnCode error: " + e.toString());
    } catch (ParserConfigurationException e) {
        Log.e(LOG_NAME, "ParserError thrown: ", e);
    } catch (SAXException e) {
        Log.e(LOG_NAME, "SAXError thrown: ", e);
    }
    return null;
}

From source file:architecture.common.model.factory.ModelTypeFactory.java

private static List<ModelList> parseLegacyXmlFile(List<ModelList> list) throws Exception {
    ClassLoader cl = Thread.currentThread().getContextClassLoader();
    Enumeration<URL> enumeration = cl.getResources(IF_PLUGIN_PATH);
    SAXParserFactory factory = SAXParserFactory.newInstance();
    factory.setNamespaceAware(true);/*from  ww  w. j ava 2 s  .c  o m*/
    XMLReader xmlreader = factory.newSAXParser().getXMLReader();
    ImplFactoryParsingHandler handler = new ImplFactoryParsingHandler();
    xmlreader.setContentHandler(handler);
    xmlreader.setDTDHandler(handler);
    xmlreader.setEntityResolver(handler);
    xmlreader.setErrorHandler(handler);
    System.out.println("Model Enum:");
    do {
        if (!enumeration.hasMoreElements())
            break;
        URL url = (URL) enumeration.nextElement();
        System.out.println(" - " + url);
        try {
            xmlreader.parse(new InputSource(url.openStream()));
            ModelList factorylist = new ModelList();
            factorylist.rank = handler.rank;
            factorylist.modelTypes.addAll(handler.getModels());
            list.add(factorylist);
        } catch (Exception exception) {
        }
    } while (true);

    return list;
}

From source file:it.osm.gtfs.input.OSMParser.java

public static List<Relation> readOSMRelations(File file, Map<String, Stop> stopsWithOSMIndex)
        throws ParserConfigurationException, SAXException, IOException {
    NodeParser nodeParser;//from w ww .  ja v a  2s . c  o  m
    {
        XMLReader xr = XMLReaderFactory.createXMLReader();
        nodeParser = new NodeParser();
        xr.setContentHandler(nodeParser);
        xr.setErrorHandler(nodeParser);
        xr.parse(new InputSource(new FileReader(file)));
    }

    WayParser wayParser;
    {
        XMLReader xr = XMLReaderFactory.createXMLReader();
        wayParser = new WayParser(nodeParser.result);
        xr.setContentHandler(wayParser);
        xr.setErrorHandler(wayParser);
        xr.parse(new InputSource(new FileReader(file)));
    }

    RelationParser relationParser;
    {
        XMLReader xr = XMLReaderFactory.createXMLReader();
        relationParser = new RelationParser(stopsWithOSMIndex, wayParser.result);
        xr.setContentHandler(relationParser);
        xr.setErrorHandler(relationParser);
        xr.parse(new InputSource(new FileReader(file)));
    }

    if (relationParser.missingNodes.size() > 0 || relationParser.failedRelationIds.size() > 0) {
        System.err.println("Failed to parse some relations. Relations id: "
                + StringUtils.join(relationParser.failedRelationIds, ", "));
        System.err.println("Failed to parse some relations. Missing nodes: "
                + StringUtils.join(relationParser.missingNodes, ", "));
    }

    return relationParser.result;
}

From source file:net.ontopia.persistence.rdbms.DatabaseProjectReader.java

public static Project loadProject(InputSource isource) throws IOException, SAXException {

    ProjectHandler handler = new ProjectHandler();
    XMLReader parser = DefaultXMLReaderFactory.createXMLReader();
    parser.setContentHandler(handler);
    parser.parse(isource);/*from w  w w . j  a v a2  s.c o m*/

    return handler.project;
}

From source file:com.puppycrawl.tools.checkstyle.XmlTreeWalker.java

/**
 * Static helper method to parses a Java source file.
 *
 * @param source// w ww.  j a  va2 s .  c  o  m
 *                contains the contents of the file
 * @throws TokenStreamException
 *                 if lexing failed
 * @throws RecognitionException
 *                 if parsing failed
 * @return the root of the AST
 */
public static DetailAST parse(InputSource source, File file)
        throws IOException, XMLStreamException, SAXException {

    XMLReader reader = XMLReaderFactory.createXMLReader();
    XmlContentHandler contentHandler = new XmlContentHandler(file);
    reader.setContentHandler(contentHandler);

    reader.parse(source);

    return contentHandler.getAST();
}

From source file:jproxy.DefaultSamplerCreator.java

/**
 * Tries parsing to see if content is xml
 * @param postData String/*w  ww.j  a va 2  s . c  o  m*/
 * @return boolean
 */
private static boolean isPotentialXml(String postData) {
    try {
        SAXParserFactory spf = SAXParserFactory.newInstance();
        SAXParser saxParser = spf.newSAXParser();
        XMLReader xmlReader = saxParser.getXMLReader();
        ErrorDetectionHandler detectionHandler = new ErrorDetectionHandler();
        xmlReader.setContentHandler(detectionHandler);
        xmlReader.setErrorHandler(detectionHandler);
        xmlReader.parse(new InputSource(new StringReader(postData)));
        return !detectionHandler.isErrorDetected();
    } catch (ParserConfigurationException e) {
        return false;
    } catch (SAXException e) {
        return false;
    } catch (IOException e) {
        return false;
    }
}