/* ============================================================================ *
* The Apache Software License, Version 1.1 *
* ============================================================================ *
* *
* Copyright (C) 1999-2003 The Apache Software Foundation. All rights reserved. *
* *
* Redistribution and use in source and binary forms, with or without modifica- *
* tion, are permitted provided that the following conditions are met: *
* *
* 1. Redistributions of source code must retain the above copyright notice, *
* this list of conditions and the following disclaimer. *
* *
* 2. Redistributions in binary form must reproduce the above copyright notice, *
* this list of conditions and the following disclaimer in the documentation *
* and/or other materials provided with the distribution. *
* *
* 3. The end-user documentation included with the redistribution, if any, must *
* include the following acknowledgment: "This product includes software *
* developed by the Apache Software Foundation (http://www.apache.org/)." *
* Alternately, this acknowledgment may appear in the software itself, if *
* and wherever such third-party acknowledgments normally appear. *
* *
* 4. The names "Apache Cocoon" and "Apache Software Foundation" must not be *
* used to endorse or promote products derived from this software without *
* prior written permission. For written permission, please contact *
* apache@apache.org. *
* *
* 5. Products derived from this software may not be called "Apache", nor may *
* "Apache" appear in their name, without prior written permission of the *
* Apache Software Foundation. *
* *
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, *
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND *
* FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE *
* APACHE SOFTWARE FOUNDATION OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, *
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLU- *
* DING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS *
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON *
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF *
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* *
* This software consists of voluntary contributions made by many individuals *
* on behalf of the Apache Software Foundation. For more information on the *
* Apache Software Foundation, please see <http://www.apache.org/>. *
* *
* ============================================================================ */
package org.apache.garbage;
import java.util.Map;
import org.apache.commons.jxpath.JXPathContext;
import org.apache.garbage.parser.Parser;
import org.apache.garbage.tree.Tree;
import org.apache.garbage.serializer.*;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;
/**
*
*
* @author <a href="mailto:pier@apache.org">Pier Fumagalli</a>, February 2003
* @version CVS $Id: Main.java,v 1.1 2003/06/21 21:11:48 pier Exp $
*/
public class Main {
private String args[] = null;
private java.util.Map props = null;
public String[] getArgs() {
return(args);
}
public Map getProps() {
return(props);
}
public static void main(String args[]) {
try {
Main main = new Main();
main.args = args;
main.props = System.getProperties();
JXPathContext context = JXPathContext.newContext(main);
InputSource source = new InputSource(args[0]);
Parser parser = new Parser();
Tree tree = parser.parse(source);
String encoding = (args.length > 1? args[1]: "US-ASCII");
XMLSerializer serializer = new XMLSerializer();
serializer.setOutput(System.out, encoding);
new Processor(serializer).process(tree, context);
} catch (SAXException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}