Xalan-C++ API Documentation

The Xalan C++ XSLT Processor Version 1.11


ExecutionContext.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(EXECUTIONCONTEXT_HEADER_GUARD_1357924680)
19 #define EXECUTIONCONTEXT_HEADER_GUARD_1357924680
20 
21 
22 
23 // Base include file. Must be first.
25 
26 
27 
29 
30 
31 
33 
34 
35 
36 XALAN_DECLARE_XERCES_CLASS(Locator)
37 
38 
39 
40 XALAN_CPP_NAMESPACE_BEGIN
41 
42 
43 
44 typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType;
45 
46 
47 
48 class XalanDOMString;
49 class XalanNode;
50 class XalanText;
51 
52 
53 
54 //
55 // An abstract class which provides support for execution.
56 //
58 {
59 public:
60 
61  ExecutionContext(MemoryManager& theMemoryManager);
62 
63  virtual
65 
66 
67  // These interfaces are inherited from ProblemListenerBase
68  virtual void
69  problem(
70  eSource source,
71  eClassification classification,
72  const XalanDOMString& msg,
73  const Locator* locator,
74  const XalanNode* sourceNode) = 0;
75 
76  virtual void
77  problem(
78  eSource source,
79  eClassification classification,
80  const XalanDOMString& msg,
81  const XalanNode* sourceNode) = 0;
82 
83  bool
85  {
86  return m_hasPreserveOrStripConditions;
87  }
88 
89  /**
90  * Determine if a text node should be stripped from the source tree,
91  * as if it weren't there.
92  *
93  * @param textNode text node from the source tree
94  * @return true if the text node should be stripped
95  */
96  virtual bool
97  shouldStripSourceNode(const XalanText& node) = 0;
98 
99  MemoryManager&
101  {
102  return m_memoryManager;
103  }
104 
105  MemoryManager&
107  {
108  return XalanMemoryManager::getExceptionMemoryManager(m_memoryManager);
109  }
110 
111 protected:
112 
113  MemoryManager& m_memoryManager;
114 
116 };
117 
118 
119 
120 XALAN_CPP_NAMESPACE_END
121 
122 
123 
124 #endif // EXECUTIONCONTEXT_HEADER_GUARD_1357924680
MemoryManager & m_memoryManager
MemoryManager & getExceptionMemoryManager() const
virtual void problem(eSource source, eClassification classification, const XalanDOMString &msg, const Locator *locator, const XalanNode *sourceNode)=0
Function that is called when a problem event occurs.
This is the abstract class that is used when reporting a problem some kind, that requires a message...
bool hasPreserveOrStripSpaceConditions() const
XALAN_CPP_NAMESPACE_BEGIN typedef XERCES_CPP_NAMESPACE_QUALIFIER Locator LocatorType
#define XALAN_PLATFORMSUPPORT_EXPORT
MemoryManager & getMemoryManager() const
virtual MemoryManager * getExceptionMemoryManager()=0

Interpreting class diagrams

Doxygen and GraphViz are used to generate this API documentation from the Xalan-C header files.

Xalan-C++ XSLT Processor Version 1.11
Copyright © 1999-2012 The Apache Software Foundation.
All Rights Reserved.

Apache Logo