summaryrefslogtreecommitdiff
path: root/cpp/src/qpid/broker/Selector.cpp
diff options
context:
space:
mode:
authorAndrew Stitcher <astitcher@apache.org>2013-03-20 02:03:19 +0000
committerAndrew Stitcher <astitcher@apache.org>2013-03-20 02:03:19 +0000
commit555ea990a42f4d391e1f27d6e90789abe0bd76bc (patch)
treeaafc0333eb09f36317adbfc09c90add0a112b061 /cpp/src/qpid/broker/Selector.cpp
parent4afa6ad8b26a8302ccf7a8559def2268a296110a (diff)
downloadqpid-python-555ea990a42f4d391e1f27d6e90789abe0bd76bc.tar.gz
QPID-4558: C++ broker selectors: Improved error reporting
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458610 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'cpp/src/qpid/broker/Selector.cpp')
-rw-r--r--cpp/src/qpid/broker/Selector.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpp/src/qpid/broker/Selector.cpp b/cpp/src/qpid/broker/Selector.cpp
index a6378f1910..3e7e044d5d 100644
--- a/cpp/src/qpid/broker/Selector.cpp
+++ b/cpp/src/qpid/broker/Selector.cpp
@@ -147,7 +147,8 @@ const Value& MessageSelectorEnv::value(const string& identifier) const
return returnedValues[identifier];
}
-Selector::Selector(const string& e) :
+Selector::Selector(const string& e)
+try :
parse(TopExpression::parse(e)),
expression(e)
{
@@ -159,6 +160,10 @@ Selector::Selector(const string& e) :
QPID_LOG(debug, "Selector parsed[" << e << "] into: " << ss.str());
}
}
+catch (std::range_error& ex) {
+ QPID_LOG(debug, "Selector failed[" << e << "] -> " << ex.what());
+ throw;
+}
Selector::~Selector()
{