You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xalan.apache.org by db...@apache.org on 2003/12/31 22:49:57 UTC
cvs commit: xml-xalan/c/src/xalanc/Utils/MsgCreator ICUResHandler.cpp ICUResHandler.hpp InMemHandler.cpp InMemHandler.hpp MsgCreator.cpp MsgCreator.hpp MsgFileOutputStream.cpp NLSHandler.cpp NLSHandler.hpp SAX2Handler.cpp SAX2Handler.hpp
dbertoni 2003/12/31 13:49:57
Modified: c/src/xalanc/Utils/MsgCreator ICUResHandler.cpp
ICUResHandler.hpp InMemHandler.cpp InMemHandler.hpp
MsgCreator.cpp MsgCreator.hpp
MsgFileOutputStream.cpp NLSHandler.cpp
NLSHandler.hpp SAX2Handler.cpp SAX2Handler.hpp
Log:
Patch for Bugzilla 25847.
Revision Changes Path
1.4 +17 -13 xml-xalan/c/src/xalanc/Utils/MsgCreator/ICUResHandler.cpp
Index: ICUResHandler.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/ICUResHandler.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ICUResHandler.cpp 3 Dec 2003 21:47:56 -0000 1.3
+++ ICUResHandler.cpp 31 Dec 2003 21:49:56 -0000 1.4
@@ -59,12 +59,16 @@
// ---------------------------------------------------------------------------
// Includes
// ---------------------------------------------------------------------------
+#include "ICUResData.hpp"
#include "ICUResHandler.hpp"
+
+#include <xercesc/sax2/Attributes.hpp>
+#include <xercesc/util/XMLUniDefs.hpp>
+
#include <cstdio>
#include <cassert>
-#include <xercesc/util/XMLUniDefs.hpp>
-#include <xercesc/sax2/Attributes.hpp>
-#include "ICUResData.hpp"
+
+
// -----------------------------------------------------------------------
@@ -93,7 +97,7 @@
// ICU genrb doesnt' like " and {} chars
-// change tham with \", \{ and /}
+// change tham with \", \{ and \}
void ICUResHandler::characters( const XMLCh* const chars
, const unsigned int length)
@@ -107,7 +111,7 @@
int j = 0;
- for ( int i=0 ; i < length ; i++ , j++)
+ for ( unsigned int i=0 ; i < length ; i++ , j++)
{
if( chars[i] == chDoubleQuote || chars[i] == chOpenCurly || chars[i] == chCloseCurly)
{
@@ -138,15 +142,15 @@
}
-void ICUResHandler::endElement(const XMLCh* const uri,
+void ICUResHandler::endElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname)
+ const XMLCh* const )
{
if ( m_startCollectingCharacters == false)
return;
- if(!XMLString::compareString(localname,targetXMLCh))
+ if(!XMLString::compareString(localname,s_targetXMLCh))
{
m_startCollectingCharacters = false;
@@ -160,15 +164,15 @@
const Attributes& attributes)
{
- if(!XMLString::compareString(localname,trans_unitXMLCh))
+ if(!XMLString::compareString(localname,s_transUnitXMLCh))
{
// this is an elemente, SAX2Handler class is responsible to handle:
// creating Index file, commom for all localization styles
SAX2Handler::startElement(uri, localname, qname, attributes);
}
- else if(!XMLString::compareString(localname,targetXMLCh))
+ else if(!XMLString::compareString(localname,s_targetXMLCh))
{
- if ( m_XML_lang != 0 )
+ if ( m_locale != 0 )
{
m_startCollectingCharacters = true;
@@ -183,9 +187,9 @@
{
printToDataFile( szApacheLicense );
- if ( m_XML_lang != 0)
+ if ( m_locale != 0)
{
- m_fStream.write(m_XML_lang,XMLString::stringLen(m_XML_lang));
+ m_fStream.write(m_locale,XMLString::stringLen(m_locale));
}
1.3 +39 -19 xml-xalan/c/src/xalanc/Utils/MsgCreator/ICUResHandler.hpp
Index: ICUResHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/ICUResHandler.hpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- ICUResHandler.hpp 2 Dec 2003 22:38:00 -0000 1.2
+++ ICUResHandler.hpp 31 Dec 2003 21:49:56 -0000 1.3
@@ -58,9 +58,7 @@
#if !defined(ICURESHANDLER_MSGCREATOR_1357924680)
#define ICURESHANDLER_MSGCREATOR_1357924680
-#include "InMemHandler.hpp"
-
-#include "MsgFileOutputStream.hpp"
+#include "SAX2Handler.hpp"
XERCES_CPP_NAMESPACE_USE
@@ -73,36 +71,58 @@
// -----------------------------------------------------------------------
ICUResHandler(const char* fileName);
+ virtual
~ICUResHandler();
// -----------------------------------------------------------------------
// Implementations of the SAX DocumentHandler interface
// -----------------------------------------------------------------------
- void endDocument();
- void endElement(const XMLCh* const uri,
+ virtual void
+ endDocument();
+ virtual void
+ endElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname) ;
- void startDocument();
-
- void startElement(const XMLCh* const uri,
- const XMLCh* const localname,
- const XMLCh* const qname,
- const Attributes& attributes);
+ const XMLCh* const ) ;
+ virtual void
+ startDocument();
+
+ virtual void
+ startElement(const XMLCh* const uri,
+ const XMLCh* const localname,
+ const XMLCh* const qname,
+ const Attributes& attributes);
- void characters( const XMLCh* const chars
+ virtual void
+ characters( const XMLCh* const chars
, const unsigned int length);
protected:
- virtual void createHeaderForDataFile ();
- virtual void createBottomForDataFile ();
-
- virtual void printBeginOfDataLine ();
- virtual void printEndOfDataLine ();
+ virtual void
+ createHeaderForDataFile ();
+
+ virtual void
+ createBottomForDataFile ();
+
+ virtual void
+ printBeginOfDataLine ();
+
+ virtual void
+ printEndOfDataLine ();
- void printToDataFile( const char* sArrayOfStrins[] );
+ void
+ printToDataFile( const char* sArrayOfStrins[] );
XalanFileOutputStream m_fStream;
+private:
+ // Not implemented...
+ ICUResHandler&
+ operator=(const ICUResHandler&);
+
+ ICUResHandler(const ICUResHandler&);
+
+ bool
+ operator==(const ICUResHandler&) const;
};
#endif // ICURESHANDLER_MSGCREATOR_1357924680
1.5 +5 -5 xml-xalan/c/src/xalanc/Utils/MsgCreator/InMemHandler.cpp
Index: InMemHandler.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/InMemHandler.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- InMemHandler.cpp 29 Dec 2003 00:26:54 -0000 1.4
+++ InMemHandler.cpp 31 Dec 2003 21:49:56 -0000 1.5
@@ -141,15 +141,15 @@
}
-void InMemHandler::endElement(const XMLCh* const uri,
+void InMemHandler::endElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname)
+ const XMLCh* const )
{
if ( m_startCollectingCharacters == false)
return;
- if(!XMLString::compareString(localname,targetXMLCh))
+ if(!XMLString::compareString(localname,s_targetXMLCh))
{
m_startCollectingCharacters = false;
@@ -163,13 +163,13 @@
const Attributes& attributes)
{
- if(!XMLString::compareString(localname,trans_unitXMLCh))
+ if(!XMLString::compareString(localname,s_transUnitXMLCh))
{
// this is an elemente, SAX2Handler class is responsible to handle:
// creating Index file, commom for all localization styles
SAX2Handler::startElement(uri, localname, qname, attributes);
}
- else if(!XMLString::compareString(localname,targetXMLCh))
+ else if(!XMLString::compareString(localname,s_targetXMLCh))
{
1.2 +33 -14 xml-xalan/c/src/xalanc/Utils/MsgCreator/InMemHandler.hpp
Index: InMemHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/InMemHandler.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- InMemHandler.hpp 2 Dec 2003 19:58:52 -0000 1.1
+++ InMemHandler.hpp 31 Dec 2003 21:49:56 -0000 1.2
@@ -60,8 +60,6 @@
#include "SAX2Handler.hpp"
-#include "MsgFileOutputStream.hpp"
-
XERCES_CPP_NAMESPACE_USE
@@ -73,23 +71,30 @@
// -----------------------------------------------------------------------
InMemHandler(const char* fileName);
+ virtual
~InMemHandler();
// -----------------------------------------------------------------------
// Implementations of the SAX DocumentHandler interface
// -----------------------------------------------------------------------
- void endDocument();
- void endElement(const XMLCh* const uri,
+ virtual void
+ endDocument();
+
+ virtual void
+ endElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname) ;
- void startDocument();
+ const XMLCh* const ) ;
+ virtual void
+ startDocument();
- void startElement(const XMLCh* const uri,
+ virtual void
+ startElement(const XMLCh* const uri,
const XMLCh* const localname,
const XMLCh* const qname,
const Attributes& attributes);
- void characters( const XMLCh* const chars
+ virtual void
+ characters( const XMLCh* const chars
, const unsigned int length);
@@ -101,20 +106,34 @@
// -----------------------------------------------------------------------
// functions for formatting the output file
// -----------------------------------------------------------------------
- virtual void createHeaderForDataFile ();
- virtual void createBottomForDataFile ();
-
- virtual void printBeginOfDataLine ();
- virtual void printEndOfDataLine ();
+ virtual void
+ createHeaderForDataFile ();
+
+ virtual void
+ createBottomForDataFile ();
+
+ virtual void
+ printBeginOfDataLine ();
+
+ virtual void
+ printEndOfDataLine ();
- void printToDataFile( const char* sArrayOfStrins[] );
+ void
+ printToDataFile( const char* sArrayOfStrins[] );
private:
bool m_isTheFirstLineInArray;
+ // Not implemented...
+ InMemHandler&
+ operator=(const InMemHandler&);
+
+ InMemHandler(const InMemHandler&);
+ bool
+ operator==(const InMemHandler&) const;
};
1.8 +8 -13 xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgCreator.cpp
Index: MsgCreator.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgCreator.cpp,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- MsgCreator.cpp 29 Dec 2003 00:26:54 -0000 1.7
+++ MsgCreator.cpp 31 Dec 2003 21:49:56 -0000 1.8
@@ -55,22 +55,17 @@
* <http://www.apache.org/>.
*/
+#include "ICUResHandler.hpp"
+#include "InMemHandler.hpp"
+#include "MsgCreator.hpp"
+#include "NLSHandler.hpp"
-
-
-// ---------------------------------------------------------------------------
-// Includes
-// ---------------------------------------------------------------------------
-#include <cassert>
-#include <xercesc/util/PlatformUtils.hpp>
-#include <xercesc/util/TransService.hpp>
#include <xercesc/sax2/SAX2XMLReader.hpp>
#include <xercesc/sax2/XMLReaderFactory.hpp>
-#include "MsgCreator.hpp"
-#include "InMemHandler.hpp"
-#include "ICUResHandler.hpp"
-#include "NLSHandler.hpp"
+#include <xercesc/util/PlatformUtils.hpp>
+#include <xercesc/util/TransService.hpp>
+#include <cassert>
#if !defined(NDEBUG) && defined(_MSC_VER)
#include <crtdbg.h>
#endif
@@ -463,7 +458,7 @@
{
try
{
- handler->setXML_Lang(theParams.localeName);
+ handler->setLocale(theParams.localeName);
parser->setContentHandler(handler);
1.2 +4 -4 xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgCreator.hpp
Index: MsgCreator.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgCreator.hpp,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- MsgCreator.hpp 29 Dec 2003 00:26:54 -0000 1.1
+++ MsgCreator.hpp 31 Dec 2003 21:49:56 -0000 1.2
@@ -60,9 +60,9 @@
#include <xalanc/Include/PlatformDefinitions.hpp>
-// ---------------------------------------------------------------------------
-// Includes for all the program files to see
-// ---------------------------------------------------------------------------
+#include <xercesc/util/XMLString.hpp>
+
+
#include <cstring>
#include <cstdlib>
@@ -72,7 +72,7 @@
#include <iostream>
#endif
-#include "SAX2Handler.hpp"
+XERCES_CPP_NAMESPACE_USE
// ---------------------------------------------------------------------------
// This is a simple class that lets us do easy (though not terribly efficient)
1.3 +1 -4 xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgFileOutputStream.cpp
Index: MsgFileOutputStream.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/MsgFileOutputStream.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- MsgFileOutputStream.cpp 2 Dec 2003 22:38:00 -0000 1.2
+++ MsgFileOutputStream.cpp 31 Dec 2003 21:49:56 -0000 1.3
@@ -57,14 +57,11 @@
#include "MsgFileOutputStream.hpp"
-#include <cerrno>
-
#include <xercesc/util/PlatformUtils.hpp>
-
#include <xercesc/util/XMLString.hpp>
#include <cassert>
-
+#include <cerrno>
#include <cstdio>
1.5 +1 -2 xml-xalan/c/src/xalanc/Utils/MsgCreator/NLSHandler.cpp
Index: NLSHandler.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/NLSHandler.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- NLSHandler.cpp 29 Dec 2003 00:26:54 -0000 1.4
+++ NLSHandler.cpp 31 Dec 2003 21:49:56 -0000 1.5
@@ -59,9 +59,8 @@
// ---------------------------------------------------------------------------
// Includes
// ---------------------------------------------------------------------------
-#include "NLSHandler.hpp"
-
#include "NLSData.hpp"
+#include "NLSHandler.hpp"
#include <cstdio>
1.4 +26 -9 xml-xalan/c/src/xalanc/Utils/MsgCreator/NLSHandler.hpp
Index: NLSHandler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/NLSHandler.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- NLSHandler.hpp 29 Dec 2003 00:26:54 -0000 1.3
+++ NLSHandler.hpp 31 Dec 2003 21:49:56 -0000 1.4
@@ -61,7 +61,6 @@
#include "ICUResHandler.hpp"
-
XERCES_CPP_NAMESPACE_USE
class NLSHandler : public ICUResHandler
@@ -69,28 +68,46 @@
public:
NLSHandler(const char* fileName, bool bCreateUnicode = false);
- ~NLSHandler(void){}
+ virtual
+ ~NLSHandler(){}
- virtual void createHeaderForDataFile ();
- virtual void createBottomForDataFile ();
+ virtual void
+ createHeaderForDataFile ();
+
+ virtual void
+ createBottomForDataFile ();
- virtual void printBeginOfDataLine ();
- virtual void printEndOfDataLine ();
+ virtual void
+ printBeginOfDataLine ();
+
+ virtual void
+ printEndOfDataLine ();
- void characters( const XMLCh* const chars
+ void
+ characters( const XMLCh* const chars
, const unsigned int length);
- void startDocument();
+ void
+ startDocument();
protected:
// ASCII version of print
- void printToDataFileasASCII( const char* sArrayOfStrins[] );
+ void
+ printToDataFileasASCII( const char* sArrayOfStrins[] );
private:
int m_RunningNumber;
bool m_bCreateUnicode;
+ // Not implemented...
+ NLSHandler&
+ operator=(const NLSHandler&);
+
+ NLSHandler(const NLSHandler&);
+
+ bool
+ operator==(const NLSHandler&) const;
};
1.5 +21 -94 xml-xalan/c/src/xalanc/Utils/MsgCreator/SAX2Handler.cpp
Index: SAX2Handler.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/SAX2Handler.cpp,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- SAX2Handler.cpp 29 Dec 2003 00:26:54 -0000 1.4
+++ SAX2Handler.cpp 31 Dec 2003 21:49:56 -0000 1.5
@@ -62,26 +62,15 @@
#include <cassert>
#include <cstdio>
-
-
-#include <xercesc/util/XMLUniDefs.hpp>
#include <xercesc/sax2/Attributes.hpp>
+#include <xercesc/util/XMLUniDefs.hpp>
-
-
-#include "MsgCreator.hpp"
+#include "ICUResHandler.hpp"
#include "IndexFileData.hpp"
+#include "MsgCreator.hpp"
-// ---------------------------------------------------------------------------
-// Local const data
-//
-// Note: This is the 'safe' way to do these strings. If you compiler supports
-// L"" style strings, and portability is not a concern, you can use
-// those types constants directly.
-// ---------------------------------------------------------------------------
-
static const char* INDEX_FILE_NAME="LocalMsgIndex.hpp";
@@ -91,52 +80,21 @@
// ---------------------------------------------------------------------------
SAX2Handler::SAX2Handler( ) :
m_numberOfRecords(0),
- m_XML_lang(0),
+ m_locale(0),
m_startCollectingCharacters(false),
- m_fIndexFormatter(INDEX_FILE_NAME)
+ m_fIndexOutputStream(INDEX_FILE_NAME)
{
}
SAX2Handler::~SAX2Handler()
{
- if (m_XML_lang != 0)
- {
- XMLString::release(&m_XML_lang);
- }
-}
-
-
-bool SAX2Handler::translateCharToXMLByteArr ( XMLByte* buffer, int iBufLen, const char* szSource)const
-{
- bool bResult = false;
-
- if ( iBufLen == 0 || szSource == 0 || buffer == 0 )
- {
- return bResult;
- }
- int inpLen = XMLString::stringLen(szSource);
-
- if ( inpLen > iBufLen )
- {
- buffer[0] = 0;
- return bResult;
- }
-
-
- for ( int i = 0; i < inpLen; i++ )
+ if (m_locale != 0)
{
- buffer[i] = szSource[i];
+ XMLString::release(&m_locale);
}
- buffer[inpLen+1] = 0;
-
- bResult = true;
-
- return bResult;
}
-
-
void SAX2Handler::createHeaderForIndexFile ()
{
printToIndexFile( szApacheLicense );
@@ -152,7 +110,6 @@
void SAX2Handler::printEndOfIndexLine ()
{
-// printToIndexFile ( szEndIndexLine );
}
@@ -168,28 +125,20 @@
if ( sArrayOfStrins == NULL)
return;
- XMLByte buffer[1024];
- buffer[0] = 0;
-
- for (int i = 0; sArrayOfStrins[i] != NULL; i++){
-
- translateCharToXMLByteArr(buffer, 1024, sArrayOfStrins[i]);
-
-
- m_fIndexFormatter.writeChars(buffer,XMLString::stringLen(sArrayOfStrins[i] ),NULL);
- m_fIndexFormatter.flush();
-
+ for (int i = 0; sArrayOfStrins[i] != NULL; i++)
+ {
+ m_fIndexOutputStream.writeAsASCII(sArrayOfStrins[i],XMLString::stringLen(sArrayOfStrins[i]));
}
}
-void SAX2Handler::startElement(const XMLCh* const uri,
+void SAX2Handler::startElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname,
+ const XMLCh* const ,
const Attributes& attributes)
{
- if(!XMLString::compareString(localname,trans_unitXMLCh))
+ if(!XMLString::compareString(localname,s_transUnitXMLCh))
{
unsigned int len = attributes.getLength();
@@ -199,45 +148,23 @@
{
const XMLCh* name = attributes.getQName(index) ;
- if (name != NULL && !XMLString::compareString(name,idXMLCh) )
+ if (name != NULL && !XMLString::compareString(name,s_idXMLCh) )
{
const XMLCh* val = attributes.getValue(index);
if ( val != NULL )
{
if ( m_numberOfRecords != 1)
printBeginOfIndexLine();
-
- int valLen = XMLString::stringLen(val);
-
-
- char* szTempString = XMLString::transcode(val);
-
- XMLByte* xmlByteBufferPtr = new XMLByte[valLen+10];
-
- translateCharToXMLByteArr(xmlByteBufferPtr, valLen, szTempString);
-
- m_fIndexFormatter.writeChars(xmlByteBufferPtr,XMLString::stringLen(szTempString),NULL);
-
- m_fIndexFormatter.flush();
-
- XMLString::release( &szTempString );
- delete[] xmlByteBufferPtr;
-
+
+ m_fIndexOutputStream.writeAsASCII(val,XMLString::stringLen(val));
char buff[100];
- XMLByte xmlByteBuffer[100];
sprintf( buff, " = %d \n",(m_numberOfRecords - 1));
- translateCharToXMLByteArr(xmlByteBuffer, 100, buff);
-
- m_fIndexFormatter.writeChars(xmlByteBuffer,XMLString::stringLen(buff),NULL);
-
- m_fIndexFormatter.flush();
+ m_fIndexOutputStream.writeAsASCII(buff,XMLString::stringLen(buff));
printEndOfIndexLine ();
-
-
}
}
@@ -280,16 +207,16 @@
}
-void SAX2Handler::setXML_Lang( const char* localName)
+void SAX2Handler::setLocale( const char* localName)
{
assert(localName != 0);
- if (m_XML_lang != 0)
+ if (m_locale != 0)
{
- XMLString::release(&m_XML_lang);
+ XMLString::release(&m_locale);
}
- m_XML_lang = XMLString::transcode(localName);
+ m_locale = XMLString::transcode(localName);
}
1.4 +61 -40 xml-xalan/c/src/xalanc/Utils/MsgCreator/SAX2Handler.hpp
Index: SAX2Handler.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/xalanc/Utils/MsgCreator/SAX2Handler.hpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- SAX2Handler.hpp 29 Dec 2003 00:26:54 -0000 1.3
+++ SAX2Handler.hpp 31 Dec 2003 21:49:56 -0000 1.4
@@ -58,16 +58,17 @@
#if !defined(SAX2HANDLER_MSGCREATOR_1357924680)
#define SAX2HANDLER_MSGCREATOR_1357924680
+#include "MsgFileOutputStream.hpp"
-#include <xercesc/sax2/DefaultHandler.hpp>
-#include <xercesc/framework/LocalFileFormatTarget.hpp>
+#include <xercesc/sax2/DefaultHandler.hpp>
#include <xercesc/util/XMLUniDefs.hpp>
+
XERCES_CPP_NAMESPACE_USE
-static const XMLCh trans_unitXMLCh[] =
+static const XMLCh s_transUnitXMLCh[] =
{
chLatin_t,
chLatin_r,
@@ -84,7 +85,7 @@
};
-static const XMLCh sourceXMLCh[] =
+static const XMLCh s_sourceXMLCh[] =
{
chLatin_s,
chLatin_o,
@@ -97,7 +98,7 @@
};
-static const XMLCh targetXMLCh[] =
+static const XMLCh s_targetXMLCh[] =
{
chLatin_t,
chLatin_a,
@@ -110,7 +111,7 @@
};
-static const XMLCh xml_LangXMLCh[] =
+static const XMLCh s_xmlLangXMLCh[] =
{
chLatin_x,
chLatin_m,
@@ -125,14 +126,14 @@
-static const XMLCh idXMLCh[] =
+static const XMLCh s_idXMLCh[] =
{
chLatin_i,
chLatin_d,
chNull
};
-static const XMLCh textXMLCh[] =
+static const XMLCh s_textXMLCh[] =
{
chLatin_T,
chLatin_e,
@@ -140,64 +141,78 @@
chLatin_t,
chNull
};
+
+
// Common class for the all system: creates index file ( common for all localization systems)
// For creation data file responsible subclasses
-class SAX2Handler : public DefaultHandler, public XMLFormatTarget
+class SAX2Handler : public DefaultHandler
{
public:
// -----------------------------------------------------------------------
// Constructors
// -----------------------------------------------------------------------
SAX2Handler();
- ~SAX2Handler();
+ virtual ~SAX2Handler();
public:
- void startElement(const XMLCh* const uri,
+ virtual void
+ startElement(const XMLCh* const ,
const XMLCh* const localname,
- const XMLCh* const qname,
+ const XMLCh* const ,
const Attributes& attributes);
- void startDocument();
+ virtual void
+ startDocument();
- void endDocument();
+ virtual void
+ endDocument();
// -----------------------------------------------------------------------
// Implementations of the SAX ErrorHandler interface
// -----------------------------------------------------------------------
- void error(const SAXParseException& e);
- void fatalError(const SAXParseException& e);
- void warning(const SAXParseException& e);
-
- virtual void writeChars
- (
- const XMLByte* const toWrite
- , const unsigned int count
- , XMLFormatter* const formatter
- ){};
+ virtual void
+ error(const SAXParseException& e);
+
+ virtual void
+ fatalError(const SAXParseException& e);
+
+ virtual void
+ warning(const SAXParseException& e);
- void setXML_Lang( const char* localName);
+ void
+ setLocale( const char* localeName);
const XMLCh*
- getXML_lang () const
+ getLocale () const
{
- return m_XML_lang;
+ return m_locale;
}
protected:
bool translateCharToXMLByteArr ( XMLByte* buffer, int iBufLen, const char* szSource)const;
- virtual void createHeaderForDataFile ()=0;
- virtual void createBottomForDataFile ()=0;
-
- virtual void printBeginOfDataLine ()=0;
- virtual void printEndOfDataLine ()=0;
+ virtual void
+ createHeaderForDataFile ()=0;
+
+ virtual void
+ createBottomForDataFile ()=0;
+
+ virtual void
+ printBeginOfDataLine ()=0;
+
+ virtual void
+ printEndOfDataLine ()=0;
+
+ virtual void
+ printToDataFile( const char* sArrayOfStrins[] ) = 0;
+
+ void
+ printToIndexFile( const char* sArrayOfStrins[] );
- virtual void printToDataFile( const char* sArrayOfStrins[] ) = 0;
- void printToIndexFile( const char* sArrayOfStrins[] );
-
- void printNumbOfRecords ();
+ void
+ printNumbOfRecords ();
@@ -212,9 +227,7 @@
protected :
int m_numberOfRecords;
- // Name of asked locale. Usially two code points, for example from local
- // name en_US "XML_lang" will be "en"
- XMLCh* m_XML_lang;
+ XMLCh* m_locale;
bool m_startCollectingCharacters;
@@ -224,8 +237,16 @@
// -----------------------------------------------------------------------
private:
- LocalFileFormatTarget m_fIndexFormatter;
+ XalanFileOutputStream m_fIndexOutputStream;
+
+ // Not implemented...
+ SAX2Handler&
+ operator=(const SAX2Handler&);
+
+ SAX2Handler(const SAX2Handler&);
+ bool
+ operator==(const SAX2Handler&) const;
};
---------------------------------------------------------------------
To unsubscribe, e-mail: xalan-cvs-unsubscribe@xml.apache.org
For additional commands, e-mail: xalan-cvs-help@xml.apache.org