Update of /cvsroot/mvp-xml/XPointer/v1/src
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27385/v1/src
Modified Files:
XPointerException.cs XPointerReader.cs
Log Message:
Index: XPointerException.cs
===================================================================
RCS file: /cvsroot/mvp-xml/XPointer/v1/src/XPointerException.cs,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- XPointerException.cs 28 Sep 2004 09:10:00 -0000 1.1
+++ XPointerException.cs 4 Nov 2004 15:49:44 -0000 1.2
@@ -9,7 +9,7 @@
/// <summary>
/// Generic XPointer exception.
/// </summary>
- public abstract class XPointerException : ApplicationException
+ public abstract class XPointerException : Exception
{
public XPointerException(string message) : base(message) {}
public XPointerException(string message, Exception innerException)
Index: XPointerReader.cs
===================================================================
RCS file: /cvsroot/mvp-xml/XPointer/v1/src/XPointerReader.cs,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- XPointerReader.cs 31 Oct 2004 08:07:15 -0000 1.7
+++ XPointerReader.cs 4 Nov 2004 15:49:44 -0000 1.8
@@ -24,7 +24,11 @@
//Underlying reader
private XmlReader _reader;
+ //Nodes selected by xpointer
private XPathNodeIterator _pointedNodes;
+ //Document cache
+ private Hashtable _cache;
+
/// <summary>
/// Initializes the <c>XPointerReader</c>.
@@ -44,6 +48,21 @@
//do nothing
}
+ /// <summary>
+ ///
+ /// </summary>
+ /// <param name="uri"></param>
+ /// <returns></returns>
+ private XPathDocument GetCachedDocument(Uri uri)
+ {
+ WeakReference wr = (WeakReference)_cache[uri.AbsoluteUri];
+ if (wr.IsAlive)
+ return (XPathDocument)wr.Target;
+ else
+ return null;
+
+ }
+
#endregion
#region constructors
@@ -68,7 +87,7 @@
/// Creates <c>XPointerReader</c> instance with given uri, stream, nametable and xpointer.
/// </summary>
public XPointerReader(Uri uri, Stream stream, XmlNameTable nt, string xpointer)
- : this (new XmlTextReader(uri.AbsoluteUri, stream, nt), xpointer) {}
+ : this (uri, stream, nt, xpointer, false) {}
/// <summary>
/// Creates <c>XPointerReader</c> instance with given uri, stream, nametable and xpointer.
|