diff options
author | Stefan Radomski <github@mintwerk.de> | 2017-05-14 11:35:34 (GMT) |
---|---|---|
committer | Stefan Radomski <github@mintwerk.de> | 2017-05-14 11:35:34 (GMT) |
commit | 1453feb7ca59167c219afb21dfba4ed3ea68d176 (patch) | |
tree | a54462ad1d506964c089420e1d8807f6ac1ce770 /src/uscxml | |
parent | 6103616a5d463c2ecd8a274b4dff0a404ab35dde (diff) | |
download | uscxml-1453feb7ca59167c219afb21dfba4ed3ea68d176.zip uscxml-1453feb7ca59167c219afb21dfba4ed3ea68d176.tar.gz uscxml-1453feb7ca59167c219afb21dfba4ed3ea68d176.tar.bz2 |
Renamed macro and updated W3C Lua tests
Diffstat (limited to 'src/uscxml')
-rw-r--r-- | src/uscxml/interpreter/BasicContentExecutor.cpp | 30 | ||||
-rw-r--r-- | src/uscxml/messages/Event.h | 12 |
2 files changed, 21 insertions, 21 deletions
diff --git a/src/uscxml/interpreter/BasicContentExecutor.cpp b/src/uscxml/interpreter/BasicContentExecutor.cpp index 61277bd..5defce3 100644 --- a/src/uscxml/interpreter/BasicContentExecutor.cpp +++ b/src/uscxml/interpreter/BasicContentExecutor.cpp @@ -67,7 +67,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { sendEvent.name = ATTR(element, kXMLCharEvent); } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element eventexpr", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element eventexpr", element); } try { @@ -78,7 +78,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { target = ATTR(element, kXMLCharTarget); } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element targetexpr", element); + ERROR_EXECUTION_RETHROW(e,"Syntax error in send element targetexpr", element); } try { @@ -89,7 +89,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { type = ATTR(element, kXMLCharType); } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element typeexpr", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element typeexpr", element); } try { @@ -124,7 +124,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { } } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element idlocation", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element idlocation", element); } try { @@ -148,14 +148,14 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { } } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element delayexpr", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element delayexpr", element); } try { // namelist processNameLists(sendEvent.namelist, element); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element namelist", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element namelist", element); } @@ -163,7 +163,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { // params processParams(sendEvent.params, element); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element param expr", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element param expr", element); } try { @@ -173,7 +173,7 @@ void BasicContentExecutor::processSend(XERCESC_NS::DOMElement* element) { sendEvent.data = elementAsData(contents.front()); } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element content", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element content", element); } // if (sendReq->dom) { @@ -431,14 +431,14 @@ void BasicContentExecutor::invoke(XERCESC_NS::DOMElement* element) { element->setUserData(kXMLCharInvokeId, (void*)invokeId, NULL); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in invoke element idlocation", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in invoke element idlocation", element); } try { // namelist processNameLists(invokeEvent.namelist, element); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element namelist", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element namelist", element); } @@ -446,7 +446,7 @@ void BasicContentExecutor::invoke(XERCESC_NS::DOMElement* element) { // params processParams(invokeEvent.params, element); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in send element param expr", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in send element param expr", element); } try { @@ -467,7 +467,7 @@ void BasicContentExecutor::invoke(XERCESC_NS::DOMElement* element) { #endif } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in invoke element content", element); + ERROR_EXECUTION_RETHROW(e, "Syntax error in invoke element content", element); } // autoforward @@ -513,7 +513,7 @@ void BasicContentExecutor::raiseDoneEvent(XERCESC_NS::DOMElement* state, XERCESC // namelist processNameLists(doneEvent.namelist, doneData); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in donedata element namelist", doneData); + ERROR_EXECUTION_RETHROW(e, "Syntax error in donedata element namelist", doneData); } @@ -521,7 +521,7 @@ void BasicContentExecutor::raiseDoneEvent(XERCESC_NS::DOMElement* state, XERCESC // params processParams(doneEvent.params, doneData); } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in donedata element param expr", doneData); + ERROR_EXECUTION_RETHROW(e, "Syntax error in donedata element param expr", doneData); } try { @@ -531,7 +531,7 @@ void BasicContentExecutor::raiseDoneEvent(XERCESC_NS::DOMElement* state, XERCESC doneEvent.data = elementAsData(contents.front()); } } catch (Event e) { - ERROR_EXECUTION_THROW3(e,"Syntax error in donedata element content", doneData); + ERROR_EXECUTION_RETHROW(e, "Syntax error in donedata element content", doneData); } } catch (ErrorEvent exc) { diff --git a/src/uscxml/messages/Event.h b/src/uscxml/messages/Event.h index fd9dd42..f40a672 100644 --- a/src/uscxml/messages/Event.h +++ b/src/uscxml/messages/Event.h @@ -23,13 +23,14 @@ #include "uscxml/messages/Data.h" #include "uscxml/util/UUID.h" -#define ERROR_PLATFORM_THROW(msg) \ +#define ERROR_PLATFORM_THROW(cause) \ uscxml::ErrorEvent e; \ e.name = "error.platform"; \ - e.data.compound["cause"] = uscxml::Data(msg, uscxml::Data::VERBATIM); \ + e.data.compound["cause"] = uscxml::Data(cause, uscxml::Data::VERBATIM); \ e.data.compound["file"] = uscxml::Data(uscxml::toStr(__FILE__), uscxml::Data::VERBATIM); \ e.data.compound["line"] = uscxml::Data(uscxml::toStr(__LINE__), uscxml::Data::INTERPRETED); \ - throw e; \ + e.eventType = uscxml::Event::PLATFORM; \ + throw e; #define ERROR_EXECUTION(identifier, cause) \ uscxml::ErrorEvent identifier; \ @@ -77,10 +78,9 @@ throw exc;\ } -#define ERROR_EXECUTION_THROW3(evt,caption,node) \ +#define ERROR_EXECUTION_RETHROW(exc, caption, node) \ {\ - auto it = evt.data.compound.find("cause"); \ - ERROR_EXECUTION2(exc,it!=evt.data.compound.end() ? it->second.atom : "",node); \ + exc.data.compound["xpath"] = uscxml::Data(DOMUtils::xPathForNode(node), uscxml::Data::VERBATIM); \ exc.data.compound["caption"] = uscxml::Data(caption, uscxml::Data::VERBATIM); \ throw exc;\ } |