Skip to content

Commit

Permalink
Remove BadArgs exception.
Browse files Browse the repository at this point in the history
Signed-off-by: Ben Greear <greearb@candelatech.com>
  • Loading branch information
greearb committed Sep 8, 2017
1 parent c8c34b9 commit 8e8b733
Show file tree
Hide file tree
Showing 7 changed files with 90 additions and 174 deletions.
14 changes: 3 additions & 11 deletions xorp/libxipc/finder_client.cc
Expand Up @@ -302,17 +302,9 @@ class FinderClientQuery :
}

for (size_t i = 0; i < al->size(); i++) {
try {
debug_msg("Adding resolved \"%s\"\n",
al->get(i).text().c_str());
rt_entry->second.values().push_back(al->get(i).text());
} catch (const XrlAtom::NoData&) {
finder_trace_result("failed (corrupt response)");
_rt.erase(rt_entry);
_qcb->dispatch(XrlError::RESOLVE_FAILED(), 0);
client().notify_done(this);
return;
}
debug_msg("Adding resolved \"%s\"\n",
al->get(i).text().c_str());
rt_entry->second.values().push_back(al->get(i).text());
}
finder_trace_result("okay");
_qcb->dispatch(e, &rt_entry->second);
Expand Down
44 changes: 15 additions & 29 deletions xorp/libxipc/tests/test_xrl_args.cc
Expand Up @@ -237,36 +237,22 @@ run_test()
atom.has_data(); // No-op
}

try {
al.get_uint32("only_uint");
} catch (const XrlArgs::BadArgs &e) {
verbose_log("Error decoding the argument: %s\n", e.str().c_str());
return 1;
} catch (...) {
verbose_log("Unanticipated exception.");
return 1;
}
al.get_ipv4("a_named_ipv4");
al.get_ipv4net("a_named_ipv4net");
al.get_ipv6("a_named_ipv6");
al.get_ipv6net("a_named_ipv6net");
al.get_int32("first_int");
al.get_int32("second_int");
al.get_uint32("only_uint");
al.get_string("a_named_string");
al.get_mac("a_named_mac");
al.get_string(0);
al.get_string("");
al.get_string("bad_karma");
al.get_int64("a_named_int64");
al.get_uint64("a_named_uint64");
al.get_fp64("a_named_fp64");

try {
al.get_ipv4("a_named_ipv4");
al.get_ipv4net("a_named_ipv4net");
al.get_ipv6("a_named_ipv6");
al.get_ipv6net("a_named_ipv6net");
al.get_int32("first_int");
al.get_int32("second_int");
al.get_uint32("only_uint");
al.get_string("a_named_string");
al.get_mac("a_named_mac");
al.get_string(0);
al.get_string("");
al.get_string("bad_karma");
al.get_int64("a_named_int64");
al.get_uint64("a_named_uint64");
al.get_fp64("a_named_fp64");
} catch (XrlArgs::BadArgs& e) {
verbose_log("Error decoding the argument: %s\n", e.str().c_str());
return 1;
}
return 0;
}

Expand Down
12 changes: 4 additions & 8 deletions xorp/libxipc/tests/test_xrl_router.cc
Expand Up @@ -82,14 +82,10 @@ got_integer(const XrlError& e,
if (e != XrlError::OKAY())
exit_on_xrlerror(e, __FILE__, __LINE__);

try {
int32_t the_int = response->get_int32("the_number");
if (the_int != 5) {
fprintf(stderr, "Corrupt integer argument.");
exit(-1);
}
} catch (const XrlArgs::BadArgs& e) {
printf("Error decoding the argument: %s\n", e.str().c_str());
int32_t the_int = response->get_int32("the_number");
if (the_int != 5) {
fprintf(stderr, "Corrupt integer argument.");
exit(-1);
}

// Eg we can iterate through the argument list
Expand Down
62 changes: 17 additions & 45 deletions xorp/libxipc/xrl_args.cc
Expand Up @@ -107,13 +107,9 @@ XrlArgs::add_bool(const char* name, bool val)
}

const bool&
XrlArgs::get_bool(const char* name) const throw (BadArgs)
XrlArgs::get_bool(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_boolean)).boolean();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_boolean)).boolean();
}

void
Expand All @@ -132,13 +128,9 @@ XrlArgs::add_int32(const char* name, int32_t val)
}

const int32_t&
XrlArgs::get_int32(const char* name) const throw (BadArgs)
XrlArgs::get_int32(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_int32)).int32();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_int32)).int32();
}

void
Expand All @@ -157,13 +149,9 @@ XrlArgs::add_uint32(const char* name, uint32_t val)
}

const uint32_t&
XrlArgs::get_uint32(const char* name) const throw (BadArgs)
XrlArgs::get_uint32(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_uint32)).uint32();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_uint32)).uint32();
}

void
Expand All @@ -182,13 +170,9 @@ XrlArgs::add_ipv4(const char* name, const IPv4& val)
}

const IPv4&
XrlArgs::get_ipv4(const char* name) const throw (BadArgs)
XrlArgs::get_ipv4(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_ipv4)).ipv4();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_ipv4)).ipv4();
}

void
Expand All @@ -207,13 +191,9 @@ XrlArgs::add_ipv4net(const char* name, const IPv4Net& val)
}

const IPv4Net&
XrlArgs::get_ipv4net(const char* name) const throw (BadArgs)
XrlArgs::get_ipv4net(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_ipv4net)).ipv4net();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_ipv4net)).ipv4net();
}

void
Expand All @@ -232,13 +212,9 @@ XrlArgs::add_ipv6(const char* name, const IPv6& val)
}

const IPv6&
XrlArgs::get_ipv6(const char* name) const throw (BadArgs)
XrlArgs::get_ipv6(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_ipv6)).ipv6();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_ipv6)).ipv6();
}

void
Expand All @@ -257,13 +233,9 @@ XrlArgs::add_ipv6net(const char* name, const IPv6Net& val)
}

const IPv6Net&
XrlArgs::get_ipv6net(const char* name) const throw (BadArgs)
XrlArgs::get_ipv6net(const char* name) const
{
try {
return get(XrlAtom(name, xrlatom_ipv6net)).ipv6net();
} catch (const XrlAtom::NoData& e) {
xorp_throw(BadArgs, e.why());
}
return get(XrlAtom(name, xrlatom_ipv6net)).ipv6net();
}

void
Expand Down Expand Up @@ -316,7 +288,7 @@ XrlArgs::add_ipvxnet(const char* name, const IPvXNet& val)
}

const IPvXNet
XrlArgs::get_ipvxnet(const char* name) const throw (BadArgs)
XrlArgs::get_ipvxnet(const char* name) const
{
XrlAtom a(name, xrlatom_ipv4net);
if (a.invalid()) {
Expand Down Expand Up @@ -346,7 +318,7 @@ XrlArgs::add_mac(const char* name, const Mac& val)
}

const Mac&
XrlArgs::get_mac(const char* name) const throw (BadArgs)
XrlArgs::get_mac(const char* name) const
{
return get(XrlAtom(name, xrlatom_mac)).mac();
}
Expand Down Expand Up @@ -430,7 +402,7 @@ XrlArgs::add_int64(const char* name, int64_t val)
}

const int64_t&
XrlArgs::get_int64(const char* name) const throw (BadArgs)
XrlArgs::get_int64(const char* name) const
{
return get(XrlAtom(name, xrlatom_int64)).int64();
}
Expand Down

0 comments on commit 8e8b733

Please sign in to comment.