Re: [bdbxml] XMLInputStreams and regular InputStreams and w3c DOM objects.
"Mark R. Diggory" <mdiggory-Mahy8Y1M33PaZwrp7/[email protected]> Sun, 25 Sep 2005 13:34:39 -0400
| Newsgroups | gmane.comp.db.dbxml.general |
|---|---|
| Message-ID | <[email protected]> |
I see this as difficult because the class isn't really an InputStream
but more or less a handle on a C InputStream. I can read from the stream
in java (C++ --> Java) when accessing the contents of the container but
I'm not sure if I can have the XMLContainer read the inputstream from
Java (Java --> C++) without actually having to subclass the C++ version
of XMLInputStream?
> XmlInputStream is a pure virtual interface. In C++, you can subclass
> XmlInputStream, and pass an instance of your class to any of the
> methods that take it as a parameter, such as
> XmlContainer.putDocument(com.sleepycat.dbxml.XmlDocument,
> com.sleepycat.dbxml.XmlUpdateContext). This is especially useful for
> streaming XML from an application directly into Berkeley DB XML
> without first converting it to a string.
Does this mean I can Implement XMLInputStream in Java and use it there,
or I have to Implement it in C++ and instantiate it using a JNI/SWIG the
way that they are created using XMLManager?
> public XmlInputStream createURLInputStream(String baseId, String systemId) throws XmlException {
> long cPtr = dbxml_javaJNI.XmlManager_createURLInputStream__SWIG_1(swigCPtr, baseId, systemId);
> return (cPtr == 0) ? null : new XmlInputStream(cPtr, false);
> }
-Mark Diggory
Ingo Lütkebohle wrote:
> I've never tested it in Java but in C++, you can easily subclass
> XmlInputStream and implement custom I/O. Implementing the Interface
> on top of a regular Java InputStream should be possible, too.
>
> On 9/25/05, *Mark R. Diggory* <mdiggory-Mahy8Y1M33PaZwrp7/[email protected]
> <mailto:mdiggory-Mahy8Y1M33PaZwrp7/[email protected]>> wrote:
>
> I'm looking to see if there is a way that I can take a pre-existing
> java.io.InputStream in Java and place its contents in bdbxml. I
> understand that I can create "XMLInputStreams" to the Database, but
> these are not true InputStreams. Its clear that there is no
> capability to Stream my content directly through the Java API (that
> the Java API is just providing handles on the native streams, but no
> access to them) unless I've missed something.
>
> Is there any way I can read my java.io.InputStream into the db
> without putting all the contents in a String or tmp file?
>
> -Mark
>
>
> ------------------------------------------ To remove yourself from
> this list, send an email to [email protected]
> <mailto:[email protected]>
>
>
------------------------------------------
To remove yourself from this list, send an
email to [email protected]