From fb98d5d011ccea324d2aeae8a3eff304ff9df1e5 Mon Sep 17 00:00:00 2001
From: David N Bertoni <dbertoni@apache.org>
Date: Mon, 6 Feb 2006 19:59:06 +0000
Subject: [PATCH] Patch from Tobias Schuette for Jira issue XERCESC-1491.

git-svn-id: https://svn.apache.org/repos/asf/xerces/c/trunk@375348 13f79535-47bb-0310-9956-ffa450edef68
---
 src/xercesc/framework/XMLBufferMgr.hpp | 26 +++++++++++++++++++++-----
 1 file changed, 21 insertions(+), 5 deletions(-)

diff --git a/src/xercesc/framework/XMLBufferMgr.hpp b/src/xercesc/framework/XMLBufferMgr.hpp
index ff41c601e..f0a3b7e8a 100644
--- a/src/xercesc/framework/XMLBufferMgr.hpp
+++ b/src/xercesc/framework/XMLBufferMgr.hpp
@@ -14,11 +14,6 @@
  * limitations under the License.
  */
 
-/*
- * $Id$
- */
-
-
 #if !defined(XMLBUFFERMGR_HPP)
 #define XMLBUFFERMGR_HPP
 
@@ -60,6 +55,11 @@ public :
     XMLBuffer& bidOnBuffer();
     void releaseBuffer(XMLBuffer& toRelease);
 
+	// -----------------------------------------------------------------------
+    //  Getter methods
+    // -----------------------------------------------------------------------
+    unsigned int getBufferCount() const;
+    unsigned int getAvailableBufferCount() const;
 
 private :
     // -----------------------------------------------------------------------
@@ -83,6 +83,22 @@ private :
     XMLBuffer**     fBufList;
 };
 
+inline unsigned int XMLBufferMgr::getBufferCount() const
+{
+    return fBufCount;
+}
+
+inline unsigned int XMLBufferMgr::getAvailableBufferCount() const
+{
+    unsigned available = fBufCount;
+    for (unsigned int index = 0; index < fBufCount && fBufList[index]; index++)
+    {
+        if (fBufList[index]->getInUse())
+            --available;
+    }
+    return available;
+}
+
 
 /**
  *  XMLBufBid is a scoped based janitor that allows the scanner code to ask
-- 
GitLab