Xalan-C++ API Reference  1.12.0
InMemHandler.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 
19 #if !defined(INMEMHANDLER_1357924680)
20 #define INMEMHANDLER_1357924680
21 
22 
23 
25 
26 #include "SAX2Handler.hpp"
27 
28 
29 
30 namespace XALAN_CPP_NAMESPACE {
31 
32 
33 
34 class InMemHandler : public SAX2Handler
35 {
36 public:
37  // -----------------------------------------------------------------------
38  // Constructors
39  // -----------------------------------------------------------------------
41  const char* fileName,
42  const char* indexFileName);
43 
44  virtual
45  ~InMemHandler();
46 
47  // -----------------------------------------------------------------------
48  // Implementations of the SAX DocumentHandler interface
49  // -----------------------------------------------------------------------
50  virtual void
51  endDocument();
52 
53  virtual void
54  endElement(
55  const XMLCh* const,
56  const XMLCh* const localname,
57  const XMLCh* const);
58 
59  virtual void
60  startDocument();
61 
62  virtual void
63  startElement(
64  const XMLCh* const uri,
65  const XMLCh* const localname,
66  const XMLCh* const qname,
67  const Attributes& attributes);
68 
69  virtual void
70  characters(
71  const XMLCh* const chars,
72  const XalanSize_t length);
73 
74 protected:
75 
77 
78  // -----------------------------------------------------------------------
79  // functions for formatting the output file
80  // -----------------------------------------------------------------------
81  virtual void
82  createHeaderForDataFile();
83 
84  virtual void
85  createBottomForDataFile();
86 
87  virtual void
88  printBeginOfDataLine();
89 
90  virtual void
91  printEndOfDataLine();
92 
93  void
94  printToDataFile(const char* sArrayOfStrings[]);
95 
96 private:
97 
98  bool m_isTheFirstLineInArray;
99 
100  // Not implemented...
101  InMemHandler&
102  operator=(const InMemHandler&);
103 
104  InMemHandler(const InMemHandler&);
105 
106  bool
107  operator==(const InMemHandler&) const;
108 };
109 
110 
111 
112 }
113 
114 
115 
116 #endif /// INMEMHANDLER_1357924680
xalanc::InMemHandler
Definition: InMemHandler.hpp:34
XALAN_CPP_NAMESPACE
#define XALAN_CPP_NAMESPACE
Xalan-C++ namespace, including major and minor version.
Definition: XalanVersion.hpp:76
xalanc::operator==
bool operator==(const XalanVector< Type > &theLHS, const XalanVector< Type > &theRHS)
Definition: XalanVector.hpp:1118
xalanc::InMemHandler::m_stream
MsgFileOutputStream m_stream
Definition: InMemHandler.hpp:76
SAX2Handler.hpp
xalanc::length
XalanDOMString::size_type length(const XalanDOMString &theString)
Get the length of a XalanDOMString.
Definition: DOMStringHelper.hpp:235
PlatformDefinitions.hpp
xalanc::MsgFileOutputStream
Definition: MsgFileOutputStream.hpp:41
xalanc::SAX2Handler
Definition: SAX2Handler.hpp:115