[jboss-svn-commits] JBoss Common SVN: r2861 - in jbossxb/trunk/src/main/java/org/jboss/xb/binding: parser and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Jun 10 17:48:00 EDT 2008
Author: alesj
Date: 2008-06-10 17:47:59 -0400 (Tue, 10 Jun 2008)
New Revision: 2861
Modified:
jbossxb/trunk/src/main/java/org/jboss/xb/binding/Unmarshaller.java
jbossxb/trunk/src/main/java/org/jboss/xb/binding/UnmarshallerImpl.java
jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/JBossXBParser.java
jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/sax/SaxJBossXBParser.java
Log:
[JBXB-144]; enable both stream/reader and systemId.
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/Unmarshaller.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/Unmarshaller.java 2008-06-10 21:20:30 UTC (rev 2860)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/Unmarshaller.java 2008-06-10 21:47:59 UTC (rev 2861)
@@ -24,10 +24,10 @@
import java.io.InputStream;
import java.io.Reader;
+import org.jboss.xb.binding.metadata.unmarshalling.DocumentBinding;
import org.jboss.xb.binding.parser.JBossXBParser;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
-import org.jboss.xb.binding.metadata.unmarshalling.DocumentBinding;
import org.xml.sax.EntityResolver;
import org.xml.sax.ErrorHandler;
@@ -67,18 +67,30 @@
Object unmarshal(Reader xmlReader, SchemaBinding schemaBinding) throws JBossXBException;
+ Object unmarshal(Reader xmlReader, String systemId, SchemaBinding schemaBinding) throws JBossXBException;
+
Object unmarshal(InputStream xmlStream, SchemaBinding schemaBinding) throws JBossXBException;
+ Object unmarshal(InputStream xmlStream, String systemId, SchemaBinding schemaBinding) throws JBossXBException;
+
Object unmarshal(String xml, SchemaBindingResolver schemaResolver) throws JBossXBException;
Object unmarshal(Reader xmlReader, SchemaBindingResolver schemaResolver) throws JBossXBException;
+ Object unmarshal(Reader xmlReader, String systemId, SchemaBindingResolver schemaResolver) throws JBossXBException;
+
Object unmarshal(InputStream xmlStream, SchemaBindingResolver schemaResolver) throws JBossXBException;
+ Object unmarshal(InputStream xmlStream, String systemId, SchemaBindingResolver schemaResolver) throws JBossXBException;
+
Object unmarshal(Reader reader, ObjectModelFactory factory, Object root) throws JBossXBException;
+ Object unmarshal(Reader reader, String systemId, ObjectModelFactory factory, Object root) throws JBossXBException;
+
Object unmarshal(InputStream is, ObjectModelFactory factory, Object root) throws JBossXBException;
+ Object unmarshal(InputStream is, String systemId, ObjectModelFactory factory, Object root) throws JBossXBException;
+
Object unmarshal(String systemId, ObjectModelFactory factory, Object root) throws JBossXBException;
Object unmarshal(String systemId, ObjectModelFactory factory, DocumentBinding binding) throws JBossXBException;
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/UnmarshallerImpl.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/UnmarshallerImpl.java 2008-06-10 21:20:30 UTC (rev 2860)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/UnmarshallerImpl.java 2008-06-10 21:47:59 UTC (rev 2861)
@@ -24,12 +24,12 @@
import java.io.InputStream;
import java.io.Reader;
+import org.jboss.xb.binding.metadata.unmarshalling.DocumentBinding;
import org.jboss.xb.binding.parser.JBossXBParser;
import org.jboss.xb.binding.parser.sax.SaxJBossXBParser;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBinding;
import org.jboss.xb.binding.sunday.unmarshalling.SchemaBindingResolver;
import org.jboss.xb.binding.sunday.unmarshalling.SundayContentHandler;
-import org.jboss.xb.binding.metadata.unmarshalling.DocumentBinding;
import org.xml.sax.EntityResolver;
import org.xml.sax.ErrorHandler;
@@ -126,6 +126,13 @@
return cHandler.getRoot();
}
+ public Object unmarshal(Reader xmlReader, String systemId, SchemaBinding schemaBinding) throws JBossXBException
+ {
+ JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaBinding);
+ parser.parse(xmlReader, systemId, cHandler);
+ return cHandler.getRoot();
+ }
+
public Object unmarshal(InputStream xmlStream, SchemaBinding schemaBinding) throws JBossXBException
{
JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaBinding);
@@ -133,6 +140,13 @@
return cHandler.getRoot();
}
+ public Object unmarshal(InputStream xmlStream, String systemId, SchemaBinding schemaBinding) throws JBossXBException
+ {
+ JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaBinding);
+ parser.parse(xmlStream, systemId, cHandler);
+ return cHandler.getRoot();
+ }
+
public Object unmarshal(String xml, SchemaBindingResolver schemaResolver) throws JBossXBException
{
JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaResolver);
@@ -147,6 +161,13 @@
return cHandler.getRoot();
}
+ public Object unmarshal(Reader xmlReader, String systemId, SchemaBindingResolver schemaResolver) throws JBossXBException
+ {
+ JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaResolver);
+ parser.parse(xmlReader, systemId, cHandler);
+ return cHandler.getRoot();
+ }
+
public Object unmarshal(InputStream xmlStream, SchemaBindingResolver schemaResolver) throws JBossXBException
{
JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaResolver);
@@ -154,6 +175,13 @@
return cHandler.getRoot();
}
+ public Object unmarshal(InputStream xmlStream, String systemId, SchemaBindingResolver schemaResolver) throws JBossXBException
+ {
+ JBossXBParser.ContentHandler cHandler = new SundayContentHandler(schemaResolver);
+ parser.parse(xmlStream, systemId, cHandler);
+ return cHandler.getRoot();
+ }
+
public Object unmarshal(Reader reader, ObjectModelFactory factory, Object root) throws JBossXBException
{
if(builder == null)
@@ -165,6 +193,17 @@
return builder.getRoot();
}
+ public Object unmarshal(Reader reader, String systemId, ObjectModelFactory factory, Object root) throws JBossXBException
+ {
+ if(builder == null)
+ {
+ builder = new ObjectModelBuilder();
+ }
+ builder.init(factory, root);
+ parser.parse(reader, systemId, builder);
+ return builder.getRoot();
+ }
+
public Object unmarshal(InputStream is, ObjectModelFactory factory, Object root) throws JBossXBException
{
if(builder == null)
@@ -176,6 +215,17 @@
return builder.getRoot();
}
+ public Object unmarshal(InputStream is, String systemId, ObjectModelFactory factory, Object root) throws JBossXBException
+ {
+ if(builder == null)
+ {
+ builder = new ObjectModelBuilder();
+ }
+ builder.init(factory, root);
+ parser.parse(is, systemId, builder);
+ return builder.getRoot();
+ }
+
public Object unmarshal(String systemId, ObjectModelFactory factory, Object root) throws JBossXBException
{
if(builder == null)
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/JBossXBParser.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/JBossXBParser.java 2008-06-10 21:20:30 UTC (rev 2860)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/JBossXBParser.java 2008-06-10 21:47:59 UTC (rev 2861)
@@ -21,15 +21,14 @@
*/
package org.jboss.xb.binding.parser;
+import java.io.InputStream;
+import java.io.Reader;
+
+import org.apache.xerces.xs.XSTypeDefinition;
+import org.jboss.xb.binding.JBossXBException;
import org.xml.sax.Attributes;
import org.xml.sax.EntityResolver;
-import org.xml.sax.SAXException;
-import org.jboss.xb.binding.JBossXBException;
-import org.apache.xerces.xs.XSTypeDefinition;
-import java.io.Reader;
-import java.io.InputStream;
-
/**
* @author <a href="mailto:alex at jboss.org">Alexey Loubyansky</a>
* @version <tt>$Revision$</tt>
@@ -71,5 +70,9 @@
void parse(InputStream is, ContentHandler handler) throws JBossXBException;
+ void parse(InputStream is, String systemId, ContentHandler handler) throws JBossXBException;
+
void parse(Reader reader, ContentHandler handler) throws JBossXBException;
+
+ void parse(Reader reader, String systemId, ContentHandler handler) throws JBossXBException;
}
Modified: jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/sax/SaxJBossXBParser.java
===================================================================
--- jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/sax/SaxJBossXBParser.java 2008-06-10 21:20:30 UTC (rev 2860)
+++ jbossxb/trunk/src/main/java/org/jboss/xb/binding/parser/sax/SaxJBossXBParser.java 2008-06-10 21:47:59 UTC (rev 2861)
@@ -180,13 +180,21 @@
public void parse(InputStream is, ContentHandler handler) throws JBossXBException
{
+ parse(is, null, handler);
+ }
+
+ public void parse(InputStream is, String systemId, ContentHandler handler) throws JBossXBException
+ {
this.contentHandler = handler;
trace = log.isTraceEnabled();
logParserInfo();
try
{
- reader.parse(new InputSource(is));
+ InputSource source = new InputSource(is);
+ if (systemId != null)
+ source.setSystemId(systemId);
+ reader.parse(source);
}
catch(Throwable e)
{
@@ -196,13 +204,21 @@
public void parse(Reader reader, ContentHandler handler) throws JBossXBException
{
+ parse(reader, null, handler);
+ }
+
+ public void parse(Reader reader, String systemId, ContentHandler handler) throws JBossXBException
+ {
this.contentHandler = handler;
trace = log.isTraceEnabled();
logParserInfo();
try
{
- this.reader.parse(new InputSource(reader));
+ InputSource source = new InputSource(reader);
+ if (systemId != null)
+ source.setSystemId(systemId);
+ this.reader.parse(source);
}
catch(Throwable e)
{
More information about the jboss-svn-commits
mailing list