dbertoni 01/03/29 14:15:33
Modified: c/src/XPath XObject.cpp XObject.hpp
Log:
Better exception throwing.
Revision Changes Path
1.21 +16 -11 xml-xalan/c/src/XPath/XObject.cpp
Index: XObject.cpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XPath/XObject.cpp,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -r1.20 -r1.21
--- XObject.cpp 2001/01/25 17:14:17 1.20
+++ XObject.cpp 2001/03/29 22:15:32 1.21
@@ -132,7 +132,7 @@
double
XObject::num() const
{
- throw XObjectInvalidCastException(getTypeString(),
TranscodeFromLocalCodePage("number"));
+ throw XObjectInvalidConversionException(getTypeString(),
TranscodeFromLocalCodePage("number"));
// This is just a dummy value to satisfy the compiler.
return 0.0;
@@ -143,7 +143,7 @@
bool
XObject::boolean() const
{
- throw XObjectInvalidCastException(getTypeString(),
TranscodeFromLocalCodePage("boolean"));
+ throw XObjectInvalidConversionException(getTypeString(),
TranscodeFromLocalCodePage("boolean"));
// This is just a dummy value to satisfy the compiler.
return false;
@@ -154,7 +154,7 @@
const XalanDOMString&
XObject::str() const
{
- throw XObjectInvalidCastException(getTypeString(),
TranscodeFromLocalCodePage("string"));
+ throw XObjectInvalidConversionException(getTypeString(),
TranscodeFromLocalCodePage("string"));
// This is just a dummy value to satisfy the compiler.
return s_nullString;
@@ -165,7 +165,7 @@
const ResultTreeFragBase&
XObject::rtree(XPathExecutionContext& /* executionContext */) const
{
- throw XObjectInvalidCastException(getTypeString(),
TranscodeFromLocalCodePage("result tree fragment"));
+ throw XObjectInvalidConversionException(getTypeString(),
TranscodeFromLocalCodePage("result tree fragment"));
// This is just a dummy value to satisfy the compiler.
#if defined(XALAN_OLD_STYLE_CASTS)
@@ -184,7 +184,7 @@
const NodeRefListBase&
XObject::nodeset() const
{
- throw XObjectInvalidCastException(getTypeString(),
TranscodeFromLocalCodePage("node set"));
+ throw XObjectInvalidConversionException(getTypeString(),
TranscodeFromLocalCodePage("node set"));
// error will throw, so this is just a dummy
// value to satisfy the compiler.
@@ -874,8 +874,9 @@
XObject::XObjectException::XObjectException(
const XalanDOMString& message,
- const XalanNode* styleNode) :
- XPathException(message, styleNode)
+ const XalanNode* styleNode,
+ const XalanDOMString& theType) :
+ XPathException(message, styleNode, theType)
{
}
@@ -887,9 +888,13 @@
-XObject::XObjectInvalidCastException::XObjectInvalidCastException(
+XObject::XObjectInvalidConversionException::XObjectInvalidConversionException(
const XalanDOMString& fromType,
const XalanDOMString& toType) :
+ XObjectException(
+ formatErrorString(fromType, toType),
+ 0,
+
StaticStringToDOMString(XALAN_STATIC_UCODE_STRING("XObjectInvalidConversionException"))),
m_fromType(fromType),
m_toType(toType)
{
@@ -897,18 +902,18 @@
-XObject::XObjectInvalidCastException::~XObjectInvalidCastException()
+XObject::XObjectInvalidConversionException::~XObjectInvalidConversionException()
{
}
const XalanDOMString
-XObject::XObjectInvalidCastException::formatErrorString(
+XObject::XObjectInvalidConversionException::formatErrorString(
const XalanDOMString& fromType,
const XalanDOMString& toType)
{
- return XalanDOMString(XALAN_STATIC_UCODE_STRING("Cannot cast an ")) +
+ return XalanDOMString(XALAN_STATIC_UCODE_STRING("Cannot convert a ")) +
fromType +
XalanDOMString(XALAN_STATIC_UCODE_STRING(" to a ")) +
toType +
1.17 +5 -4 xml-xalan/c/src/XPath/XObject.hpp
Index: XObject.hpp
===================================================================
RCS file: /home/cvs/xml-xalan/c/src/XPath/XObject.hpp,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- XObject.hpp 2001/01/16 02:34:45 1.16
+++ XObject.hpp 2001/03/29 22:15:32 1.17
@@ -297,22 +297,23 @@
explicit
XObjectException(
const XalanDOMString& message =
XalanDOMString(),
- const XalanNode* styleNode = 0);
+ const XalanNode* styleNode = 0,
+ const XalanDOMString& theType =
XalanDOMString(XALAN_STATIC_UCODE_STRING("XObjectException")));
virtual
~XObjectException();
};
- class XObjectInvalidCastException : public XObjectException
+ class XObjectInvalidConversionException : public XObjectException
{
public:
- XObjectInvalidCastException(
+ XObjectInvalidConversionException(
const XalanDOMString& fromType,
const XalanDOMString& toType);
virtual
- ~XObjectInvalidCastException();
+ ~XObjectInvalidConversionException();
const XalanDOMString&
getFromType() const
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]