stream = configuration.openStream();
stream = URLHandlerRegistry.getDefault().openStream(configuration);
    public void parse(URL configuration) throws ParseException, IOException {        // put every type definition from ivy to configurator        Map typeDefs = _ivy.getTypeDefs();        for (Iterator iter = typeDefs.keySet().iterator(); iter.hasNext();) {            String name = (String) iter.next();            _configurator.typeDef(name, (Class)typeDefs.get(name));        }                InputStream stream = null;        try {            stream = configuration.openStream();            SAXParserFactory.newInstance().newSAXParser().parse(                stream,                this);        } catch (IOException e) {            throw e;        } catch (Exception e) {            ParseException pe = new ParseException("failed to configure with "+configuration+": "+e.getMessage(), 0);            pe.initCause(e);            throw pe;        } finally {            if (stream != null) {                try {                    stream.close();                } catch (IOException e) {                }            }        }    }