Xalan-C++ API Reference  1.12.0
XercesLiaisonXalanDOMStringPool.hpp
Go to the documentation of this file.
1 /*
2  * Licensed to the Apache Software Foundation (ASF) under one
3  * or more contributor license agreements. See the NOTICE file
4  * distributed with this work for additional information
5  * regarding copyright ownership. The ASF licenses this file
6  * to you under the Apache License, Version 2.0 (the "License");
7  * you may not use this file except in compliance with the License.
8  * You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */
18 #if !defined(XERCESLIAISONXALANDOMSTRINGPOOL_HEADER_GUARD_1357924680)
19 #define XERCESLIAISONXALANDOMSTRINGPOOL_HEADER_GUARD_1357924680
20 
21 
22 
23 // Base include file. Must be first.
25 
26 
27 
29 
30 
31 
32 #include <xercesc/util/Mutexes.hpp>
33 
34 
35 
36 namespace XALAN_CPP_NAMESPACE {
37 
38 
39 
40 // A version of XalanDOMStringPool which is synchronized using a Xerces Mutex.
42 {
43 public:
44 
46  typedef xercesc::XMLMutex XMLMutexType;
47  typedef xercesc::XMLMutexLock XMLMutexLockType;
48 
49  explicit
50  XercesLiaisonXalanDOMStringPool(MemoryManager& theManager);
51 
53  create(MemoryManager& theManager);
54 
55  virtual
57 
58  // These are inherited from XalanDOMStringPool...
59 
60  virtual void
61  clear();
62 
63  virtual size_t
64  size() const;
65 
66  virtual const XalanDOMString&
67  get(const XalanDOMString& theString);
68 
69  virtual const XalanDOMString&
70  get(
71  const XalanDOMChar* theString,
72  XalanDOMString::size_type theLength = XalanDOMString::npos);
73 
74 private:
75 
76  // Not implemented, for now...
78 
80  operator=(const XercesLiaisonXalanDOMStringPool&);
81 
82  bool
84 
85  // Data members...
86  mutable XMLMutexType m_mutex;
87 };
88 
89 
90 
91 }
92 
93 
94 
95 #endif // !defined(XERCESLIAISONXALANDOMSTRINGPOOL_HEADER_GUARD_1357924680)
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition: XalanVersion.hpp:76
xalanc::clear
void clear(XalanDOMString &theString)
Remove all elements from target string.
Definition: DOMStringHelper.hpp:2475
xalanc::operator==
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition: XalanVector.hpp:1118
xalanc::XercesLiaisonXalanDOMStringPool::XMLMutexType
xercesc::XMLMutex XMLMutexType
Definition: XercesLiaisonXalanDOMStringPool.hpp:46
xalanc::XercesLiaisonXalanDOMStringPool
Definition: XercesLiaisonXalanDOMStringPool.hpp:41
xalanc::XercesLiaisonXalanDOMStringPool::XMLMutexLockType
xercesc::XMLMutexLock XMLMutexLockType
Definition: XercesLiaisonXalanDOMStringPool.hpp:47
XercesParserLiaisonDefinitions.hpp
XALAN_XERCESPARSERLIAISON_EXPORT
#define XALAN_XERCESPARSERLIAISON_EXPORT
Definition: XercesParserLiaisonDefinitions.hpp:39
XalanDOMStringPool.hpp
xalanc::XercesLiaisonXalanDOMStringPool::ParentType
XalanDOMStringPool ParentType
Definition: XercesLiaisonXalanDOMStringPool.hpp:45
xalanc::XalanDOMStringPool
Definition: XalanDOMStringPool.hpp:39
xalanc::XalanDOMString::size_type
XalanSize_t size_type
Definition: XalanDOMString.hpp:57
xalanc::XalanDOMString
Definition: XalanDOMString.hpp:45