All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.biojava.bio.program.sax.GenericSAXParserTest Maven / Gradle / Ivy

The newest version!
/*
 *                    BioJava development code
 *
 * This code may be freely distributed and modified under the
 * terms of the GNU Lesser General Public Licence.  This should
 * be distributed with the code.  If you do not have a copy,
 * see:
 *
 *      http://www.gnu.org/copyleft/lesser.html
 *
 * Copyright for this code is held jointly by the individual
 * authors.  These should be listed in @author doc comments.
 *
 * For more information on the BioJava project and its aims,
 * or to join the biojava-l mailing list, visit the home page
 * at:
 *
 *      http://www.biojava.org/
 *
 */
package org.biojava.bio.program.sax;


import org.xml.sax.ContentHandler;
import org.xml.sax.XMLReader;

/**
 * Test application for use by SAX Parser writers.  Allows simple functions
 * of a SAX Parser to be developed/debugged without being dependent on other
 * packages.This is useful in complex development/build environments
 * 

* Copyright © 2001 Cambridge Antibody Technology. * *

* Primary author -

    *
  • Simon Brocklehurst (CAT) *
* Other authors -
    *
  • Neil Benn (CAT) *
  • Lawrence Bower (CAT) *
  • Derek Crockford (CAT) *
  • Tim Dilks (CAT) *
  • Colin Hardman (CAT) *
  • Stuart Johnston (CAT) *
* * @author Cambridge Antibody Technology (CAT) * @version 1.0 * */ class GenericSAXParserTest { /** * Given the name of a SAXParser and a pathname, produce XML * * @param args a String[] representation of a pathname * @exception Exception if an error occurs */ public static void main(String[] args) throws Exception { String oInput = null; String oClassName = null; // Catch wrong number of arguments or help requests if ( (args.length != 2) || (args[0].equals("-help")) || (args[0].equals("-h")) ) { System.out.println(); System.out.println(); System.out.println( "Given the name of a SAXParser (i.e. the name of the class, and"); System.out.println( "and the pathname of an example file you wish to parse, the"); System.out.println( "application outputs an XML representation of the data"); System.out.println(); System.out.println( "Usage: java GenericSAXParserTest "); System.out.println(); System.out.println( "For example java " + "org.biojava.bio.program.sax.GenericSAxParserTest" + "org.biojava.bio.program.sax.BlastLikeSAXParser"); System.out.println(); System.out.println(); System.exit(1); } if (args.length == 2) { oClassName = args[0]; oInput = args[1]; } //Now the actual application... // Get hold of the chosen SAXParser XMLReader oChosenSAXParser = null; try{ oChosenSAXParser = (XMLReader)Class.forName(oClassName).newInstance(); }catch(InstantiationException ie){ ie.printStackTrace(); }catch(IllegalAccessException iae){ iae.printStackTrace(); }catch(ClassNotFoundException cnfe){ cnfe.printStackTrace(); } /** * Create a SAX Parser */ XMLReader oParser = oChosenSAXParser; /** * Create an XML ContentHandler. This * implementation of the DocumentHandler * interface simply outputs nicely formatted * XML. Passing a true value to the SimpleXMLEmitter * constructor instructs the ContentHandler * to take QNames from the SAXParser, rather * than LocalNames. */ ContentHandler oHandler = (ContentHandler) new SimpleXMLEmitterTestHelper(); /* * Give the parser a reference to the ContentHandler * so that it can send SAX2 mesagges. */ oParser.setContentHandler(oHandler); /* * Parsing using file as input * Open file and read all lines from file sequentially */ oParser.parse(oInput); System.out.println(); System.out.println("---------------------END------------------"); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy