From: Oleg T. <he...@us...> - 2004-11-04 15:49:54
|
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. |